![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Create Trigger Before Insert [D7]
tytus © (2006-08-15 15:47:00)Добрыго дня всем. Я только начинаю изучать Oracle 8i. Создал в PL/SQL Developer-е таблицу. Какой тригер мне написать, чтобы он генерировал новое значение уникального ключа столбца ID из последовательности t_seq? Последовательность t_seq уже создана.
Desdechado (2006-08-15 18:34:00) [1]> сначала Concepts
Само собой.
Но если человек перешел к созданию триггеров, подразумевается, что концепции осилены. Хотя далеко не факт, конечно.
Petr V. Abramov (2006-08-15 18:14:00) [2]сначала Concepts
Desdechado (2006-08-15 17:21:00) [3]> будем учится дальше...
Вот-вот. В первую очередь заведи себе 3 файла из справки: SQL Reference, PL-SQL Reference, Database Error Messages.
И читай сначала там. Тогда не будет вопросов типа [0] и [5]
tytus (2006-08-15 17:14:00) [4]>[8]Sergey13
Долгих лет жизни тебе и огромное спасибо!
Всем сенкс, будем учится дальше...
Sergey13 (2006-08-15 17:04:00) [5]> ошибка ORA-942, плиз хелп.
ORA-00942
table or view does not exist
Прав у тебя нету на эту таблицу.
evvcom (2006-08-15 16:56:00) [6]А ему комменты в падлу читать :)
Desdechado (2006-08-15 16:46:00) [7]
declare
-- local variables here
нафига эта секция, если в ней ничего не описано?
tytus (2006-08-15 16:33:00) [8]>All
ошибка ORA-942, плиз хелп.
create or replace trigger Test_Trigger_B_I
before insert on Mytest
for each row
declare
-- local variables here
begin
select t_Seq.Nextval into :New.ID from Dual;
end Test_Trigger_B_I;
Desdechado (2006-08-15 16:01:00) [9]вообще-то дурной подход - располагать триггеры в посторонних по отношению к таблицам схемах
tytus (2006-08-15 15:57:00) [10]>[1]Desdechado
create or replace trigger TestTrigger_B_I
before insert on Test_User.Mytest
for each row
declare
-- local variables here
begin
select Test_User.t_Seq.Nextval into :New.ID from Dual;
end TestTrigger_B_I;
ругается на 1)PLS-00201 на Test_User.t_seq
2)PL/SQL statement ignored
Sergey13 (2006-08-15 15:55:00) [11]
if new.id is null then
select t_sec.nextval into new.id from dual;
end if;
Desdechado (2006-08-15 15:52:00) [12]
CREATE OR REPLACE TRIGGER TR_RECONNECTLIST_BI
BEFORE INSERT ON RECONNECTLIST
FOR EACH ROW
BEGIN
SELECT genRECONNECTLIST.NEXTVAL INTO :new.rlist_id FROM Dual;
END TR_RECONNECTLIST_BI;