![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Триггер не работает. [D6, IB6.x]
Alex_Bredin © (2004-08-03 23:34:00)IBQuery+ IBUpdateSQL - меняю данные в таблице. На PK поле повешен триггер - генератор уникальных значений. При добавлении записи и коммите вываливается ошибка = поле не нулл и требует значения.Хотя теор.(по-моему) триггер(афте инсерт)должон заносить туда значение. Однако нет.Вопрос- в какой момент он срабатывает. Извиняюсь заранее за возм. ламерский вопрос.
Rule (2004-08-04 11:36:00) [1]Alex_Bredin (03.08.04 23:34)
Просто возьми IBExpert, там есть много вспомогательных инструментов и наворотов, чтоб упрость ту же работу с автогеренацией первчиного ключа, там это заключается в том чтобы поставить 2 галочки и все, и тригер и геренратор нужные сами создадутся
А при использовании в качестве компонентов доступа к БД возьми лучше FIBPLUS комонент dataset, там все настройки есть и работает понадежнее чем IBX, и тогда у тебя таких вопросов попросту возникать не будет
Iconka (2004-08-04 10:50:00) [2]или используй тригер бефоре-инсерт
Соловьев (2004-08-04 09:52:00) [3]5. Заполнить GeneratorField у IBDataSet - тогда корректно пройдет рефреш
Johnmen (2004-08-03 23:56:00) [4]1. Триггер вешается на событие,а не на поле.
2. Триггер (афте инсерт) ничего уже не должен, т.к. уже ничего не может. Он уже опоздал :) Запись уже вставлена.
3. В приложении для этого поля укажи Required=False
4. Пользуй IBDataSet, а не эту связку - наследие БДЕ.