Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

UpdateSQL and NOT NULL [D5, IB6.x]


Борис ©   (2002-12-16 15:49:00) 

Здравствуйте!

В общем есть таблица
CREATE TABLE "T_SKLAD"
(
"PKEY" INTEGER NOT NULL,
"NOMINAL" VARCHAR(250),
"TYPE_ELEM" VARCHAR(250),
"TYPE_ELEM_SVAZ" INTEGER,
"PRICE" INTEGER,
"POSTAVCHIK" INTEGER,
"PRIMECHANIE" VARCHAR(250),
"SROK_POSTAVKI" VARCHAR(250),
"OSTATOK" FLOAT,
"DEFICIT_NORM" INTEGER,
"ZAKAZAT" INTEGER,
"ZAKAZANO" INTEGER,
"OPLATIT" INTEGER,
"OPLACHENO" INTEGER,
"P1" INTEGER,
"P2" INTEGER,
"P3" INTEGER,
"P4" INTEGER,
"P5" INTEGER,
PRIMARY KEY ("PKEY")
);

К ней в UpdateSQL Insert написано:
insert into T_SKLAD
(PKEY, NOMINAL, TYPE_ELEM, TYPE_ELEM_SVAZ, PRICE, POSTAVCHIK,
PRIMECHANIE, SROK_POSTAVKI, OSTATOK, DEFICIT_NORM)
values
(GEN_ID(G_SKLAD, 1), :NOMINAL, :TYPE_ELEM, :TYPE_ELEM_SVAZ, :PRICE,
:POSTAVCHIK, :PRIMECHANIE, :SROK_POSTAVKI, :OSTATOK, :DEFICIT_NORM)

При попытке добавить черех DBGrid пишет, что PKEY должен быть заполнен. Почему? Я же явно пишу чо надо вносить в PKEY значение из генератора? И еще, если в DBGride в PKEY внести любое целое значение добавить, то все будет ОК. А это целое значение (взятое с потолка0 заменится на значение генератора.
как лечить?


FreeLancer   (2002-12-16 16:07:00) [1]


> FreeLancer Спасибо! а как быть если заранее неизвестно,
> какие именно поля будут выбраны?

А какая разница? Если известно, что значения в них вставляться будут именно таким образом. Можно сразу для всех отключить Required в Design-time. Если что, ошибка все равно возникнет и данные не станут менее целостными :-)


Борис   (2002-12-16 16:00:00) [2]

FreeLancer Спасибо! а как быть если заранее неизвестно, какие именно поля будут выбраны?


passm   (2002-12-16 16:00:00) [3]

Борис © (16.12.02 15:49)> При попытке добавить черех DBGrid... До TQuery.ApplyUpdates доходит?

> А это целое значение (взятое с потолка0 заменится на значение
> генератора.
> как лечить?

Точнее закодировать. Напиши триггер который 0 будет менять на сгенерированное значение.


FreeLancer   (2002-12-16 15:55:00) [4]

Fields.. PKEY -> Required := false;


Наверх

Титульная страница Поиск, карта сайта Написать письмо