Използвайки съхранена процедура, просто създайте параметър от тип 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)“ - това всъщност ли е името на таблицата?