1 つのトリガーで 2 つのテーブルを使用できますか? 2 つのテーブルからデータを配置する必要があるという点で履歴テーブルがあります。
すなわち。
Guest (Guestno, firstname,lastname,address,city, state, zip.....)
Booking (BookingId, Hotelno, Guestno, datefrom, datefrom)
Boogking history (bookingid,guestno, fristname,lastname, address, city, state, zip, hotelno, datefrom, dateto)
したがって、作成したいトリガーは、予約テーブルのdatefromが更新されるたびに、booking_historyテーブルのすべての情報を更新する必要があることです(datetoが入力されていない場合はdatetoを除く)
以下を作成しようとしましたが、ゲストテーブルがこれに記載されていないためエラーが発生しますが、どこに配置すればよいかわかりません
CREATE OR REPLACE TRIGGER BOOKING_DATETO_UPDATE
AFTER UPDATE OF DATETO ON BOOKING
FOR EACH ROW
BEGIN
INSERT INTO BOOKINGHISTORY
(BOOKINGID, GUETNO, FIRSTNAME, LASTNAME, ADDRESS, CITY, STATE, ZIP, HOTELNO, DATETO, DATFROM)
VALUES (:OLD.bookingid,:OLD.guestno, :OLD.FirstName, :OLD.LastName,
:OLD.Address, :OLD.City, :OLD.State, :OLD.Zip, :OLD,Hotelno, :OLD.Dateto, :OLD.Datefrom);
end;
私が得るエラーは以下です。以下はサンプルですが、Guest テーブルのすべてのフィールド (guestno、firstname、lastname、ADDRESS、CITY、STATE)
エラー (9,38): PLS-00049: バインド変数 'OLD.FIRSTNAME' が正しくありません