Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.19;
Скачать: [xml.tar.bz2];

Вниз

Помогите с примером триггера   Найти похожие ветки 

 
Senka   (2002-11-28 11:20) [0]

Люди добрые....
Как сделать так чтобы например при добавлении новой записи в таблицу поле первичного ключа автоматически заносилось увеличиваясь на единицу.
Вот пример но он чегото не работает:

CREATE GENERATOR "TEHNIKA_GEN";

SET TERM ^ ;
CREATE TRIGGER "SETTEHN" FOR "TEHNIKA"
ACTIVE BEFORE INSERT POSITION 0
as
begin
new.N_TEH = gen_ID(TEHNIKA_Gen, 1);
end ^
COMMIT WORK ^
SET TERM ;^

Спасиба.


 
Johnmen   (2002-11-28 11:21) [1]

:new.N


 
stone   (2002-11-28 11:23) [2]

Давно уже не работал с интербэйзом, но по-моему тут кавычки везде лишние.


 
Alexandr   (2002-11-28 11:30) [3]

нет. Это от третьего диалекта.
Стандарт SQL-92 в отношении кавычек почитай.


 
Senka   (2002-11-28 13:43) [4]

Дело не в кавычках. Их уже генерит сам интербейз я взял код уже скомпилированный.
А пример подобный у кого нибудь есть. И что это :new.N -поставить двоеточие перед new.


 
Alexandr   (2002-11-28 13:51) [5]

да правильный триггер. Должен работать.
Другое дело, что ты у себя в дадасете значения не видишь... Пока запрос не переоткроешь. Так это уже другая проблема.


 
Andriano   (2002-11-28 14:21) [6]

new.N_TEH = gen_ID(TEHNIKA_Gen, 1) ^


 
Andriano   (2002-11-28 14:22) [7]

new.N_TEH = gen_ID(TEHNIKA_Gen, 1) ^


 
Senka   (2002-11-28 17:34) [8]

Если сделать так

new.N_TEH = gen_ID(TEHNIKA_Gen, 1)^

то ерор вылазит и не компилит.



 
Alexandr   (2002-11-29 07:44) [9]

да не слушай ты тут всякий бред.
У тебя же откомпилировался триггер.

А с чего ты взял, что не заботает?


 
Wolf226   (2002-11-29 11:09) [10]

Тригер правильный, похоже проблема в другом.
Например в самой программе.
Поле первичного ключа not null.
поэтому Delphi по умолчанию ставит Required:=true;
И если ты его не заполнишь, то он не выполнит Post
Поэтому надо явно определить поля. И поставить Required:=false
для поля N_TEH.



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

Форум: "Базы";
Текущий архив: 2002.12.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
14-61760
TankMan
2002-11-20 13:30
2002.12.19
Люди, где достать nmdaytim.pas?


1-61587
phantom2040
2002-12-10 08:59
2002.12.19
Работа со временем


1-61571
dkDimon
2002-12-09 23:59
2002.12.19
Консольное приложение


14-61771
Fantasist
2002-11-26 05:53
2002.12.19
Вот ссылку не могу найти.


4-61886
Oleg_G
2002-11-05 22:30
2002.12.19
Вопрос в том, как можно разделить поток данных





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский