1.やさしい
トランザクションで ROLLBACK は何をしますか?
- Aテーブルを削除する
- Bトランザクション開始以降に行った変更を取り消す
- Cトランザクションのすべての変更を永続的にディスクへ保存する
- D直前の文を繰り返す
2.やさしい
CREATE、ALTER、DROP などの文は SQL のどの部分に属しますか?
- Aトランザクション制御言語(TCL)
- Bデータ定義言語(DDL)
- Cデータ操作言語(DML)
- Dデータ制御言語(DCL)
3.やさしい
WHERE price BETWEEN 10 AND 20 はどの行を選びますか?
- Aprice が 10 から 20 の範囲外の行
- Bprice が 10 より大きく 20 より小さい行(10 と 20 は除く)
- Cprice が 10 から 20 まで(10 と 20 を含む)の行
- Dprice が 10 または 20 に等しい行だけ
4.ふつう
第一正規形(1NF)で求められるのは次のうちどれですか?
- Aすべてのテーブルがちょうど 1 列であること
- B各列が原子的な値を持ち、繰り返しグループがないこと
- Cすべての非キー列が、キー全体に従属し、キー以外のものには従属しないこと
- D外部キーがないこと
5.ふつう
ROLLBACK TO SAVEPOINT s1 は何をしますか?
- Aセーブポイントとそれ以降に変更されたすべてのテーブルを削除する
- Bトランザクション全体を最初から取り消す
- Cセーブポイント s1 より後に行った変更を取り消し、トランザクションは開いたままにする
- Dトランザクションを終了し、すべてをコミットする
6.ふつう
SELECT price * 2 AS double_price FROM t WHERE double_price > 10 が多くのデータベースで失敗するのはなぜですか?
- ASELECT リストでは算術演算が許されないから
- BWHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- CWHERE はテキスト列しか比較できないから
- D別名にアンダースコアを含めてはいけないから
7.むずかしい
クエリに対するカバリングインデックスとは何ですか?
- Aすべてのテーブルのすべての列をカバーするインデックス
- B毎晩再構築されるインデックス
- Cクエリに必要なすべての列を含み、テーブル自体を読まなくてよいインデックス
- D主キーだけのインデックス
8.むずかしい
R(A, B, C, D) に関数従属性 A → B と C → D があります。候補キーは何ですか?
- A{B, D}
- B{A}
- C{A, C}
- D{C}
解答
- 1. B · トランザクション開始以降に行った変更を取り消す
- 2. B · データ定義言語(DDL)
- 3. C · price が 10 から 20 まで(10 と 20 を含む)の行
- 4. B · 各列が原子的な値を持ち、繰り返しグループがないこと
- 5. C · セーブポイント s1 より後に行った変更を取り消し、トランザクションは開いたままにする
- 6. B · WHERE は SELECT リストより先に評価されるので、別名がまだ存在しないから
- 7. C · クエリに必要なすべての列を含み、テーブル自体を読まなくてよいインデックス
- 8. C · {A, C}
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。