Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zapisz byte[] w bazie danych SQL Server z C#

Powinieneś być w stanie napisać coś takiego:

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();
}

Używając Linq-to-SQL, napisałbyś coś takiego:

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

   item.ByteContent = (your byte content here);

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

To wstawi Twój byte[] do kolumny Content typu VARBINARY w tabeli SQL Server jako strumień bajtów, który można później ponownie odczytać 1:1.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd przepełnienia arytmetycznego podczas konwersji wyrażenia na typ danych datetime. (podczas wyświetlania daty i godziny..)

  2. Uzyskiwanie ostrzeżenia:wartość Null jest eliminowana przez agregację lub inną operację SET

  3. Nie można załadować SqlServerSpatial.dll

  4. Użyj TYPE_NAME(), aby uzyskać nazwę typu danych w SQL Server

  5. SYSUTCDATETIME() Przykłady w SQL Server (T-SQL)