Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 ADO запрос показывает некорректно результат выборки  [new]
arruah
Member

Откуда: Казахстан
Сообщений: 15
Использую Dеlphi 6 работаю с SQLServer 7.0 через ADOConnection
к примеру в поле Password имеется запись "secret", когда происходит выборка запрос выдаёт значение поля "secret " то есть добавляет откуда то много много пробелов. Откуда берет я так и не понял. Может быть это связано с типом данных ? Потому как я зашел в саму таблицу и там действительно "secret " хотя я ввожу только secret без пробелов ?
26 июл 03, 12:07    [276926]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Strannik
Member

Откуда:
Сообщений: 254
Ну если поле Password у тебя типа char(N) или nchar(N), то оно дополняется пробелами справа, если длина значения меньше длины поля.
26 июл 03, 12:11    [276929]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
ето просто длина поля в таблице больше чем само значение и тип ,не помню толи varchar толи char до длины поля лупит пробелы.
26 июл 03, 12:11    [276930]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
arruah
Member

Откуда: Казахстан
Сообщений: 15
и как выходить из положения ?
менять тип ?
26 июл 03, 12:15    [276931]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
да пропарси поле на клиенте и обреж лишнее
26 июл 03, 12:17    [276933]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
arruah
Member

Откуда: Казахстан
Сообщений: 15
а не легче на серваке эту проблему решить без парсинга ?
26 июл 03, 12:20    [276934]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
select rtrim(field).......
26 июл 03, 12:26    [276937]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
arruah
Member

Откуда: Казахстан
Сообщений: 15
убедил :)
tnx
26 июл 03, 12:31    [276940]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
неа,я все равно на клиенте б делал
26 июл 03, 12:38    [276949]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
SSK
Member

Откуда:
Сообщений: 52
Лучше VarChar использовать. Это не фиксированная ячейка и соответственно пробелы не добавляет.
27 июл 03, 01:41    [277147]     Ответить | Цитировать Сообщить модератору
 Re: ADO запрос показывает некорректно результат выборки  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145719
В данном случае поле "secret" создавалось при установке

SET ANSI_PADDING OFF

Теперь оно всегда будет дополнятся пробелами до указаной длины поля. Подробности см. BOL.

Что бы решить эту проблему раз и навсегда надо

Установить в SQL Server Propeties - Connections - Ansi padding=ON

Создать в табле аналогичное текстовое поле.
Перенести в него данные из существующего поля.
Удалить старое поле
Переименовать новое поле
27 июл 03, 11:41    [277205]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить