Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Вмъкване на масив от байтове ВЪВ varbinary(max) запис

Използвайки съхранена процедура, просто създайте параметър от тип varbinary(max) и го вмъкнете в таблицата, както бихте направили всеки тип данни.

Във вашия c# (или vb или друг) код добавете параметър към вашия sql команден обект и задайте байтовия масив като стойност на параметъра:

command.Parameters.AddWithValue("@parameter_name", myByteArray);

Ако не използвате съхранена процедура, вероятно можете да направите същото с параметризиран sql оператор, но никога не съм опитвал това, така че не мога да дам пример.

Редактиране:

Използвате параметризирана заявка, което не е моето нещо, така че не мога да гарантирам, че това ще работи. Но ето код, който трябва да ви накара да продължите.

RemoteSQLcmd = New SqlCommand("INSERT INTO Table(1) Values (newid(), ProductID, @bin_value", RemoteSQLConn)
RemoteSQLcmd.Parameters.AddWithValue(@bin_value", imSource) ;

Двоичната стойност трябва да бъде представена като параметър (@bin_value), а стойността се задава от командата AddWithValue. Името на параметъра не трябва да съвпада с името на колоната.

Няколко бележки:Бих предложил да използвате имена на колони във вашия оператор за вмъкване, вместо в зависимост от позицията на колоната. Също така, не знам какво имате предвид под „таблица(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. ORDER BY в изглед на Sql Server 2008

  2. Как TRY_CAST() работи в SQL Server

  3. SQL Server заявка за намиране на всички разрешения/достъп за всички потребители в база данни

  4. Как да присвоя избрана стойност на DropDownList на SqlDataSource?

  5. Преименувах колоната си, за да включва име на таблица. Защо вече не мога да го преименувам?