SQL>
SQL> CREATE TABLE game_player
2 (player_id NUMBER,
3 game_id NUMBER,
4 group_number NUMBER,
5 marked VARCHAR2(1) DEFAULT 'N',
6 pcmac VARCHAR2(1) DEFAULT 'N',
7 score NUMBER,
8 CONSTRAINT game_player_pk
9 PRIMARY KEY (player_id, game_id, group_number));
Table created.
SQL>
SQL>
SQL> CREATE OR REPLACE TRIGGER before_insert_row
2 BEFORE INSERT
3 ON game_player
4 FOR EACH ROW
5 BEGIN
6 DBMS_OUTPUT.put_line ('Before Insert Row');
7 DBMS_OUTPUT.put_line ('Old ID ' || :OLD.player_id);
8 DBMS_OUTPUT.put_line ('New ID ' || :NEW.player_id);
9 DBMS_OUTPUT.put_line ('Old ROWID ' || ROWIDTOCHAR (:OLD.ROWID));
10 DBMS_OUTPUT.put_line ('New ROWID ' || ROWIDTOCHAR (:NEW.ROWID));
11 END;
12 /
Trigger created.
SQL>
SQL> BEGIN
2 INSERT INTO game_player(player_id, game_id, group_number, marked, pcmac, score)
3 VALUES (1, 1, 1, 'Y', 'N', NULL);
4
5 UPDATE game_player
6 SET player_id = player_id;
7
8 DELETE game_player;
9 END;
10
11 /
PL/SQL procedure successfully completed.
SQL>
SQL> drop table game_player;
Table dropped.