single
チャレンジ:CREATEと制約
メニューを表示するにはスワイプしてください
これまで、さまざまな企業で働き、それぞれのニーズに合わせてSELECTクエリを実行してきました。しかし、テーブルの作成や変更方法を学ぶ必要があります。
テーブルはCREATE文を使って作成します。CREATE文はSELECT文と似た構造ですが、データを選択するのではなく、データを作成します。
1234CREATE TABLE example ( id INT PRIMARY KEY, some_info VARCHAR(50) );
これらの例を実行しても、出力は表示されません。これらの例は新しいテーブルを作成するだけだからです。同じコードを再度実行すると、テーブルがすでに存在するというエラーが表示されます。 これらのコードスニペットは例であり、この後の課題で新しく作成したテーブルにデータを挿入し、画面に表示することですべてが正しく動作していることを確認できます。
このクエリは、id と some_info の2つのカラムを持つ空のテーブルを作成します。
各カラムに使用されているデータ型に注目してください:
INTは整数データ用;VARCHAR(50)はテキスト用で、最大50文字まで許可されます。
データ型は非常に多いため、ここですべてを扱うわけではありません。このセクションでは主要なものに焦点を当て、他の型については今後学習を進める中で扱います。
以下は、異なるデータ型を持つ別のテーブルです。
1234567CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), birthdate DATE, salary DECIMAL(10, 2), is_active BOOLEAN );
このクエリは、ユーザー情報を格納するための 空のテーブルを作成します。含まれる情報は以下の通りです:
- 整数型の
ID; nameデータ型のVARCHAR(50)情報;DATEデータ型の生年月日情報;- 浮動小数点数型の給与情報;
trueまたはfalseのみを受け付けるデータ型のユーザーの有効状態。
制約
SQLにおいて、制約はカラムに適用されるルールであり、データの整合性を保証します。PRIMARY KEYの隣にIDを指定すると、このカラムは一意の値を持ち、空にすることはできません。各テーブルにはPRIMARY KEYを1つだけ設定できます。
一般的な制約の例は以下の通りです:
NOT NULL: このカラムは空の値を持つことができません。UNIQUE: このカラム内のすべての値が異なる必要があります。DEFAULT: 値が指定されていない場合、このカラムにデフォルト値を設定します。
これらは一部の例です。これらの制約をテーブルに追加する方法を見てみましょう。
1234567CREATE TABLE users_2 ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, birthdate DATE, salary DECIMAL(10, 2) DEFAULT 50000, is_active BOOLEAN );
この場合、nameカラムには必ず値が必要であり、空やnullにはできません。また、給与が指定されていない場合は50000がデフォルト値として設定されます。
このような制約を利用することで、テーブル内のデータが正確で、設定したルールに従うことを保証できます。
スワイプしてコーディングを開始
libraryという名前のテーブルを作成してください。
このテーブルには4つのカラムが必要です:
id- 整数型の主キー。title- varchar型、NULL不可。author- varchar型。pages- int型。
クエリの最後には必ずセミコロン(;)を付けてください。
カラム名は必ず指定された通りに使用してください。
右側には大量のコードが表示されていますが、これを変更しないでください。これはあなたの解答が正しくチェックされるために書かれています。このセクションの後半で、そこに書かれている内容について学びます。
簡単な手順
- CREATEクエリを使って
libraryという新しいテーブルを作成してください。 - テーブルには4つのカラム:
id、title、author、pagesが必要です。 - 1つ目のカラムには
INT PRIMARY KEYを指定してください。 - 2つ目のカラムには
VARCHAR(50) NOT NULLを指定してください。 - 3つ目のカラムには
VARCHAR(50)を指定してください。 - 4つ目のカラムには
INTを指定してください。
解答
フィードバックありがとうございます!
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください