Страница 1 из 1

Пустая строка в Fb

Добавлено: 25 окт 2005, 18:02
ndStar
Задаю поле tt varchar(4) not null. Пытаюсь при вставке записи присвоить ему значение '' (пустая строка). Ругается что значение = null. Но позвольте, null и '' разные вещи! Причем при хитрой манипулции, когда вставляется какое-то значение, а потом оно стирается (:='') все проходит гладко. Что это, глюк FB? И что с этим делать?

Добавлено: 25 окт 2005, 18:16
kdv
КАК ты присваиваешь '' столбцу? Может, это используемые тобой компоненты придуряются, конвертируя '' в null....

Пустая строка в Fb

Добавлено: 26 окт 2005, 09:51
ndStar
AppendRecord([cnt,ss]) где ss=''. Что Используя TpFibDataSet, что IBTable. Результат один, в табличке появляется null. Если через DbExpert - тоже самое, задать ему пустую строку удается только сначала забив какое-нибудь значение, а потом его стереть.
IBTable проглатывает ситуацию
T.AppendRecord([1,'kyky']); T.Edit; Tss.value:=''; T.Post;
а TpFibDataSet упорно при Tss.value:='' выдает null

Добавлено: 26 окт 2005, 11:27
kdv
про IBX я может быть еще бы поверил, а вот про FIBPlus - не верю. Смотри свойства столбца, может там что есть, что преобразует '' в null. Насчет ibexpert - естественно, если столбец не заполнял, то он считается null. когда написал и стер - уже не null. Может, у тебя какой defaul или триггер на это дело есть?

Пустая строка в Fb

Добавлено: 26 окт 2005, 12:26
ndStar
Можно не верить, но у меня написана простенькая программа

Тавлица создавалась BDExpertом
CREATE TABLE "Ad2Plo" (
"Ord" BIGINT NOT NULL,
"Ag" VARCHAR(4) NOT NULL);
Какие еще тут свойства могут быть и где их искать?
Может BDExpert какие-то свои ограничения накладывает?

Ad2Plo.AppendRecord([2,'1']); Проходит
Ad2Plo.AppendRecord([1,'']); Выдает ошибку, мол нельзя полю Ag присваивать NULL.

Никаких триггеров и умолчаний не стоит, все проще пареной репы.
Вот такие пироги, не знаю что с этим делать.

С уважением, Nd

Добавлено: 26 окт 2005, 13:12
@ndrey
В свойствах датасета, в PrepareOptions поле psSetEmptyStrToNull попробуй поставить False

Пустая строка в Fb

Добавлено: 26 окт 2005, 13:38
ndStar
Спасибо ОГРОМНОЕ! Все получается!