Главная страница
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.046 c
1-1091111490
_student
2004-07-29 18:31
2004.08.15
Может ли на форме существовать два объекта с одинаковыми именами?


11-1078154025
ctapik
2004-03-01 18:13
2004.08.15
Занимаемая память программы (Task manager)


14-1091081332
Труп Васи Доброго
2004-07-29 10:08
2004.08.15
TTreeView??????


3-1090496084
REA
2004-07-22 15:34
2004.08.15
Структура таблиц


1-1091198512
Antonmm
2004-07-30 18:41
2004.08.15
Новый каталог