Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Символ с кодом 0 / 9 сообщений из 9, страница 1 из 1
29.01.2002, 14:01
    #32021741
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
Подскажите как сохранить строку в которой есть символ с кодом 0 ?
На данный момент я получаю ошибку Unclosed quotation mark before the character string 'тут идет то, что было до символа с кодом 0' ?

PS Вери сорри если этот вопрос уже обсуждался, но поиск у меня уже полчаса ищет и не возвращает никаких результатов
...
Рейтинг: 0 / 0
29.01.2002, 15:04
    #32021745
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
Ну вот из QA получается:
create table #tmp(s varchar(100))
go
insert #tmp(s)
select 'aaa' + char(0) + 'ddd'
select s, datalength(s) from #tmp
go
drop table #tmp
Получаем:
-------------- -----------
aaa ddd 7

Так что это проблема клиента. Расскажите, что используете, как...
...
Рейтинг: 0 / 0
29.01.2002, 15:31
    #32021751
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
В буквальном виде это выглядит так:

Update tblUser SET [Password] = 'DS RJ', [PasswordLastChange] = '2002-01-29 14:42:23', [Expires] = 0 WHERE ID = 29

Где после 'DS идет символ с кодом 0 (ну уж так генерится пассворд ( )
Может быть какие то установки для поля Password нужны ? Password обьявлен как varchar
...
Рейтинг: 0 / 0
29.01.2002, 15:36
    #32021752
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
В догонку...

Запрос выполняется из программы на VB. Как сервер используется MSSQL 2000
...
Рейтинг: 0 / 0
29.01.2002, 15:43
    #32021753
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
и еще...
я выполнил в QA приведенный Вами код и получил

aaa 7

т.е. не работает... хотя ошибок при выполнении не происходит. Может быть это какие то установки у БД ?
...
Рейтинг: 0 / 0
29.01.2002, 16:02
    #32021755
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
>я выполнил в QA приведенный Вами код и получил
Это происходит при направлении вывода в рекордсет - Results in Grid
При Results in Text все показывается правильно.

Если вы в своем клиентском приложении формируете строку запроса в переменную, то скорее всего символ с кодом 0 понимается VB как окончание символьной строки и на выполнение передается только эта часть
Update tblUser SET [Password] = 'DS
что и вызывает ошибку выполнения. Об этом же говорит и сообщение об ошибке
Unclosed quotation mark before the character string - Отсутсвует закрывающий символ одинарная кавычка
...
Рейтинг: 0 / 0
29.01.2002, 16:25
    #32021758
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
Похоже что Вы правы.
Правда это не вина VB, а ADO. ADO обрабатывает строку только до "0"
...
Рейтинг: 0 / 0
30.01.2002, 07:31
    #32021781
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
VB обрабатывает любые символы. Это явно ошибка ADO. Хотя тоже должна обрабатывать...
...
Рейтинг: 0 / 0
31.01.2002, 09:38
    #32021880
HotDog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Символ с кодом 0
Если кому то интересно решение ...
Подобные строки можно передавать как параметр SP и тогда все сохраняется.
Напрямую, через Execute у ADO запрос не выполняется.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Символ с кодом 0 / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]