ORACLE MASTER Silver SQL 26ai更新・定義・トランザクションの判断オリジナル・公式資料照合難易度★★★☆☆
Oracle AI Database 26aiの通常の永続表t_del(id)、t_trunc(id)にはそれぞれCOMMIT済みの2行だけがある。参照制約・トリガー等はなく、自動COMMITはOFFである。同一セッションで次を順に成功させた後、各表の行数はどれか。 DELETE FROM t_del; ROLLBACK; TRUNCATE TABLE t_trunc; ROLLBACK;
A
t_del=0行、t_trunc=0行
最初のDELETEは未COMMITなので、続くROLLBACKで取り消され、t_delの2行は残ります。
B
t_del=2行、t_trunc=2行
TRUNCATE TABLEを通常のROLLBACKで取り消すことはできません。t_truncは0行のままです。
C
t_del=2行、t_trunc=0行★ 正解
DELETEは取り消せますが、TRUNCATEは取り消せないため、この組になります。
D
t_del=0行、t_trunc=2行
DELETEとTRUNCATEのロールバック可能性が逆です。自動COMMITがOFFでもTRUNCATEは取り消せません。
解説
DELETEはDMLなので、最初のROLLBACKによって削除した2行を戻せます。通常の永続表を対象とするTRUNCATE TABLEはロールバックできません。最後のROLLBACKを実行してもt_truncは空のままです。
根拠資料・確認情報
対応範囲:Oracle AI Database 26ai SQL Associate(1Z0-171-JPN)
資料確認日:2026-10-29
同じレッスンの問題
問題 1
Oracle AI Database 26aiで、p(id PRIMARY KEY)にはCOMMIT済みの10だけがある。空のcは次の定義で作成済みである。自動COMMITはOFF、追加の制約・トリガー・他セッションによる変更はない。同一セッションで、表定義の後に示すINSERT 2文とCOMMITを順に実行した結果はどれか。
表定義(作成済み):
CREATE TABLE c (
id NUMBER PRIMARY KEY,
p_id NUMBER REFERENCES p(id) DEFERRABLE INITIALLY DEFERRED
);
ここから実行:
INSERT INTO c VALUES (1,99);
INSERT INTO p VALUES (99);
COMMIT;
問題 3
Oracle AI Database 26aiで、通常表items(id NUMBER PRIMARY KEY)には(1)、(2)の2行だけがある。次のALTERとSELECTを実行し、その後INSERTを試みる。追加の制約・トリガーはなく、DEFAULT ON NULLは指定しない。SELECTが返す合計とINSERTの成否の組はどれか。
ALTER TABLE items ADD (qty NUMBER DEFAULT 7 NOT NULL);
SELECT SUM(qty) FROM items;
INSERT INTO items (id,qty) VALUES (3,NULL);
問題 4
Oracle AI Database 26aiで、counter_t(id PRIMARY KEY,n NUMBER)の(1,10)はCOMMIT済みで、audit_ids(id NUMBER PRIMARY KEY)は空である。自動COMMITはOFF、制約は即時検査で、トリガー等はない。SQLクライアントはINSERTがエラーになっても次の文へ進む設定で、次を同一セッションで順に実行する。最後のnとaudit_idsの行数はどれか。
UPDATE counter_t SET n = 20 WHERE id = 1;
INSERT INTO audit_ids(id)
SELECT 1 FROM dual UNION ALL SELECT 1 FROM dual;
COMMIT;