0

私は高校生(ID、名前、学年)といいね(ID1、ID2)で働いている2つの関係を持っています

好きな関係にレコードを挿入する挿入トリガーを作りたいです。

Highschooler リレーションに新しい Highschooler を挿入すると、挿入トリガーでレコードを likes に挿入する必要があり、基本的に新しい Highschooler は同じ学年の全員が好きです。

私が欲しいのは以下のようなものです:

create trigger R1
after insert on Highschooler
for each row
when (Old.grade = New.grade)
begin
    insert into Likes values(New.ID, Old.ID));   
end;

ただし、挿入トリガーでは、古い参照は無効です。では、どうすれば古い属性を参照できますか?

@Bill Gregg: ヒントと説明をありがとう。それで、これはあなたが提案していることですか?

create trigger R1
after insert on Highschooler
for each row
begin
    insert into Likes values(hs.ID, old.ID));
    select(hs.ID, old.ID from Highschooler hs, Highschooler old
    where hs.grade = old.grade and hs.ID <> old.ID
end;

DBMS で実行しましたが、実行されません。挿入後に選択ステートメントを使用することに問題があると思われます。

4

1 に答える 1