Вниз
Скачать: CL | DM;

Пробелы в строковых полях   Найти похожие ветки 

← →
dmdel ©   (2007-02-21 14:59) [0]

Здравствуйте,
У меня вот такая проблемка: dbgrid дополняет строковое поле пробелами до максимального размера и не дает изменить значение пока не сотрешь хотя бы один пробел. Используется Fb 1.5, поле типа varchar(9).


← →
Desdechado ©   (2007-02-21 15:16) [1]

С VARCHAR-полями такого не происходит.
Тем более, DBGrid ничего никуда не добавляет, это отверстие для доступа к датасету.
Значит, эти пробелы были записаны в поле принудительно, еще до чтения.
А вот с CHAR-полями происходит принудительное дополнение пробелами до описанной длины поля.


← →
dmdel ©   (2007-02-21 15:23) [2]


> Desdechado ©   (21.02.07 15:16) [1]

В самой базе лишних пробелов нет. А при отображении в DbGrid-е дополняется пробелами до максимального значения.


← →
Sergey13 ©   (2007-02-21 15:26) [3]

> [2] dmdel ©   (21.02.07 15:23)
> В самой базе лишних пробелов нет.
Как узнал?

> А при отображении в DbGrid-е дополняется пробелами до максимального значения.
Если ничего не делать, то нет. Значит, что-то кто-то сделал.


← →
dmdel ©   (2007-02-21 15:42) [4]


> Sergey13 ©   (21.02.07 15:26) [3]
> > [2] dmdel ©   (21.02.07 15:23)
> > В самой базе лишних пробелов нет.

С помощью IBExpert-а

> Если ничего не делать, то нет. Значит, что-то кто-то сделал

Сам поражаюсь как так получается. Однако факт.


← →
dmdel ©   (2007-02-21 15:42) [5]


> Sergey13 ©   (21.02.07 15:26) [3]
> > [2] dmdel ©   (21.02.07 15:23)
> > В самой базе лишних пробелов нет.

С помощью IBExpert-а

> Если ничего не делать, то нет. Значит, что-то кто-то сделал

Сам поражаюсь как так получается. Однако факт.


← →
Desdechado ©   (2007-02-21 15:44) [6]

> С помощью IBExpert-а
В нем есть настройка "обрезать пробелы в текстовых полях при показе".


← →
dmdel ©   (2007-02-21 15:55) [7]


> В нем есть настройка "обрезать пробелы в текстовых полях
> при показе".

Не могу найти...


← →
Sergey13 ©   (2007-02-21 16:05) [8]

> [5] dmdel ©   (21.02.07 15:42)

Ты случайно на этом поле тип в БД не менял с чар на варчар?


← →
Desdechado ©   (2007-02-21 16:38) [9]

> Не могу найти...
В регистрационной информации конкретной БД.


← →
dmdel ©   (2007-02-21 17:05) [10]


> Sergey13 ©   (21.02.07 16:05) [8]

Да возможно. Непомню, давно было


← →
Sergey13 ©   (2007-02-22 08:28) [11]

> [10] dmdel ©   (21.02.07 17:05)

Попробуй проапдейтить "проблемное" поле по всей таблице. Хуже точно не будет.
update table1
set field1=field1

По идее, если пробелы остались в наследство от чара (могу ошибаться, но вроде у меня такое было как-то), они должны уйти.


← →
dmdel ©   (2007-02-22 10:39) [12]


> Sergey13 ©   (22.02.07 08:28) [11]

Попробовал. Все равно показывает пробелы. Сам ничего понять не могу.
Даже когда вставляет новую запись, все равно ставит пробелы.
Тип домена точно Varchar. В полне возможно, что раньше был  Char (затем поменял). Может удалить этот домен и создать новый? Может это просто глюк?


← →
Desdechado ©   (2007-02-22 12:39) [13]

> update table1 set field1=field1
Это не отрежет пробелы. Делай Trim.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.029 c
15-1172255894
mdaaaaaaa
2007-02-23 21:38
2007.03.18
Flash


15-1171640133
atruhin
2007-02-16 18:35
2007.03.18
наследование фрэймов в Delphi 7


2-1172402809
Riply
2007-02-25 14:26
2007.03.18
ReallocMem и сохранность "первых" байт информации.


2-1172401882
Name
2007-02-25 14:11
2007.03.18
преобразовывать символы в буквы


2-1172174890
Kyau
2007-02-22 23:08
2007.03.18
Как узнать, установлен ли в системе тот или иной шрифт?




   Наверх