Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
volkforlive Member Откуда: Сообщений: 49 |
Добрый день! Мне нужно загрузить файлик в поле таблицы. Ну ок, делаю это скриптом : INSERT INTO [Project].[dbo].[Table1] ([Version] ,[Date] ,[Xsd]) VALUES ('3.3.3.3', '20140520' ,(SELECT * FROM OPENROWSET(BULK N'D:\File.XSD', SINGLE_CLOB) AS XSD)) GO В результате, в таблицу попадает файлик. Он имеет примерно такой вид: 0xDEFFFBF6C8F1........... Копирую эту строку и прописываю такую строчку в скрипт (он должен записывать этот файл автоматом). if exists (select Version from Table1 where Version ='3.3.3.3') update Table1 set [Xsd]=0xDEFFFBF6C8F1........... where Version ='3.3.3.3' else insert into Table1 ([Version],[Xsd]) values ('3.3.3.3',0xDEFFFBF6C8F1........... Скрипт выполняется успешно... но затем в базу пишется 0x0DeFFF.... то есть лишний ноль перед строкой. Подскажите пожалуйста,как убрать это лишний ноль? |
20 май 14, 15:41 [16043306] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
А вы уверены, что при "Копирую эту строку" вы скопировали четное число знаков ? declare @x varbinary(50) set @x = 0xD select @x |
||
20 май 14, 15:44 [16043325] Ответить | Цитировать Сообщить модератору |
volkforlive Member Откуда: Сообщений: 49 |
Glory, да, все именно так- последний символ не копируется. Я посмотрел скрипт- (в который копирую получившуюся строку)- там этот последний символ есть. После выполнения скрипта- он пропадает, а перед всей строкой появляется 0. |
22 май 14, 13:46 [16054805] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
еще раз бинарная константа состоит из _четного_ числа символов При нечетном числе символов впереди будет добавлен 0 declare @x1 varbinary(50), @x2 varbinary(50), @x3 varbinary(50), @x4 varbinary(50) set @x1 = 0xD set @x2 = 0xDA set @x3 = 0xDAE set @x4 = 0xDAEF select @x1, @x2, @x3, @x4 |
||
22 май 14, 13:49 [16054842] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |