SQL4 択難易度 基礎

id 列を主キーにしたい。正しい CREATE TABLE は?

正答

  1. CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, email TEXT);
  2. CREATE TABLE users (id INTEGER, name TEXT PRIMARY KEY, email TEXT);
  3. CREATE TABLE users (id INTEGER, name TEXT, email TEXT PRIMARY KEY);
  4. CREATE TABLE users (id INTEGER, name TEXT, email TEXT) PRIMARY KEY;

解説

列ごとの制約は、その列の名前と型の直後に書く。id INTEGER PRIMARY KEY とすれば id が主キーになる。name TEXT や email TEXT の後ろに書くと、文としては通るが name や email が主キーになってしまい意図と違う。閉じ括弧の後ろに PRIMARY KEY を置くことはできず構文エラー。複数列をまとめて主キーにする場合は、列定義の最後に PRIMARY KEY (col1, col2) という表制約の形で書く。

参考: www.sqlite.org

primary-keycreate-table

この問題を含む SQL のテストを制限時間つきで解く

SQLクイズへ