Мне нужно сделать запрос, чтобы вставить значение в таблицу SQL. Тип значения varbinary, и у меня есть строка для вставки с шестнадцатеричным значением в ней. Так что я пытался использовать SQL Преобразовать функцию:Строковое значение в байте [] C#
using (SqlCommand dbCommand = new SqlCommand("INSERT INTO [Link] ([Record]) values (CONVERT(varbinary,@myrecord);", dbConn))
dbCommand.Parameters.Add("myrecord", System.Data.SqlDbType.VarBinary).Value = recordString;
, но у меня есть эта ошибка: Не удалось преобразовать значение параметра из строки в Byte [].
Итак, я попытался преобразовать свою строку в байт [], но вся функция, которую я нашел на этом сайте, преобразует мою строку в байт, изменяя ее значение, поэтому это не хорошо, потому что моя строка внутри значения, которое мне нужно вставить в таблице.
Recap: У меня есть строка с этим значением: «0x54000000006C00000000099W043100300030003100» как я могу добавить ее в таблицу SQL с полем varbinary?
Если вы используете функцию CONVERT в вашем SqlCommand, почему вы пытаетесь добавить параметр VARBINARY? В среднем, не работает ли это: 'dbCommand.Parameters.Add (« myrecord », System.Data.SqlDbType.VarChar) .Value = recordString;' – Pikoh
Когда я это пробовал, значение моей строки преобразуется, а не то, что Я хотел. – Heisenberg
Пример не является допустимой шестнадцатеричной строкой, в середине есть «W». – Kevin