0
データベース内のオファーとリクエストに一致するトリガーを正しく実行しようとしていて、一致する場合は別のテーブルにデータを追加します。これは私のためにかなり複雑になってきて、誰かが私を正しい方向に向けることができます。2つのテーブルのデータをチェックしてから別のテーブルにデータを追加するMySQLのトリガー
CREATE TRIGGER rideMatch
AFTER INSERT ON rideRequest
FOR EACH ROW
BEGIN
IF EXISTS(
SELECT * from rideOffer r
where r.time = new.time AND
r.date = new.date AND
r.pickUpLocation = new.pickUpLocation AND
r.dropOffLocation = new.dropOffLocation
)
THEN
INSERT INTO Ride(rideDate, pickUpTime, pickUpLocation, dropOffLocation, driver, carName)
VALUES(new.date, new.time, new.pickUpLocation, new.dropOffLocation, r.driver, r.carName);
END IF;
あなたは、少なくとも 'END'キーワードが欠落しています。これは、単一のステートメント・トリガーがあるためしかし、あなただけの 'BEGIN'キーワードを削除することができます。 –
このクエリの問題点は何ですか? –
私はより明確にすべきだった。私はまた、元のテーブルからエントリが削除されたときにこれを実行します。また、最後に文法上の誤りがあり、最後の挿入文でrテーブルを参照できるかどうかはわかりません。 –