Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.15;
Скачать: CL | DM;

Вниз

UpdateSql + тригеры: Как их "подружить"?   Найти похожие ветки 

 
Andrew   (2004-07-20 17:21) [0]

Уважаемые мастера!
Приму любую помощь/совет по сабжу.
В таблице (два поля N:int, NAME:string) на поле N "висит" тригер на автоинкремент.
Из IBQuery выполняю след. запрос:
INSERT INTO TRAIN (NAME) VALUES ("бла-бла-бла");
Все гуд. Выполняется, добавляется, тригер срабатывает (а куда ж он денется).
Хочу тож самое "привинтить" к IBUpdateSQL на InsertSQL....
INSERT INTO TRAIN (NAME) VALUES (:NAME);
INSERT INTO TRAIN (N,NAME) VALUES (:N,:NAME);

Ессно не заполняя N.
Так вот ругается он на меня благим матом: Давай, говорит, мне значение N.  Мне же хочется что бы я ему ничего не давал, а он сам тихонечко вызывал тригер и подставлял..........
Может у меня несколько разные представления о наших с ним (ИБ) правах и обязаностях?


 
Курдль ©   (2004-07-20 17:22) [1]


> поле N "висит" тригер на автоинкремент.

А зачем? IB-компоненты + генератор не справляются?


 
Соловьев ©   (2004-07-20 17:26) [2]


> А зачем? IB-компоненты + генератор не справляются?

на всякий случай надо. А вдруг не заполнит из клиента?
TField.Required = false


 
jack128 ©   (2004-07-20 17:26) [3]

TField.Required должно быть false


 
Andrew   (2004-07-20 17:45) [4]

Спасибо за быстрый ответ!!
Смысл я понял :)))
А где это? Это свойство? Или ручками до/после коннекта?
для проверки сделал так:
связка IBTable + IBUpdateSQL + DataSource + DBGrid
IBTable.FieldDef[0].faRequired := false?


 
Соловьев ©   (2004-07-20 17:52) [5]

Вообще-то надо использовать IBDataSet, а в нем заполнить GeneratorField
желательно выбрать несервер, а событие Пост или Нью, тогда коректно пройдет Рефреш.


 
jack128 ©   (2004-07-20 17:52) [6]

2 варианта

1) создаешь в дезин тайм все поля и выставляешь в инспекторе объектов это свойство
2) в ран тайм после открытия датасета.


 
Andrew   (2004-07-20 18:22) [7]

УРА!!!!!!
ЗАРАБОТАЛО!!!!!!
(щенячий восторг)
ЗЫ: заработало через генератор из датасета. А где устанавливать
фиелд.рекьюред я так и не понял :)))))
СПАСИБО!!!!!



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

Текущий архив: 2004.08.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
1-1091082876
seregin2
2004-07-29 10:34
2004.08.15
HtmlHelp API


1-1091096635
Прямой
2004-07-29 14:23
2004.08.15
OpenDialog


1-1091081401
ksa2002
2004-07-29 10:10
2004.08.15
combobox в Stringgride


3-1089624661
MORA
2004-07-12 13:31
2004.08.15
Структура БД


11-1057128019
Ajax
2003-07-02 10:40
2004.08.15
TextAlign