Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Speichern Sie byte[] in einer SQL Server-Datenbank von C#

Sie sollten in der Lage sein, so etwas zu schreiben:

string queryStmt = "INSERT INTO dbo.YourTable(Content) VALUES(@Content)";

using(SqlConnection _con = new SqlConnection(--your-connection-string-here--))
using(SqlCommand _cmd = new SqlCommand(queryStmt, _con))
{
   SqlParameter param = _cmd.Parameters.Add("@Content", SqlDbType.VarBinary);
   param.Value = YourByteArrayVariableHere;

   _con.Open();
   _cmd.ExecuteNonQuery();
   _con.Close();
}

Unter Verwendung von Linq-to-SQL würden Sie etwa Folgendes schreiben:

using(YourDataContextHere ctx = new YourDataContextHere())
{
   SomeClassOfYours item = new SomeClassOfYours();

   item.ByteContent = (your byte content here);

   ctx.SomeClassOfYourses.InsertOnSubmit(item);
   ctx.SubmitChanges();
}

Dadurch wird Ihr byte[] eingefügt in eine Spalte Content vom Typ VARBINARY in Ihrer SQL-Server-Tabelle als Bytestrom, den Sie später wieder 1:1 zurücklesen können.