ログイン
問題12

制約を追加してみよう

SQLでは人為的ミスを防ぐ為の制約というものが用意されています。 制約をかけることで、予期しない値を格納できないように設定することができます。

アイコン画像

問題12:制約を追加してみよう

家計簿テーブルの「日付」カラムに'NULL'が入らないように制約をかけましょう。

ブラウザのアイコン期待する画面

解答の見本画像

タグアイコン解答ソースコード

              USE ninjacode;
ALTER TABLE 家計簿 CHANGE 日付 日付 INT NOT NULL;
SHOW COLUMNS FROM 家計簿;
¥SQL¥
            

コメントのアイコン解説

列の値に'NULL'を格納させないためにはNOT NULL制約をかけます。
このような制約をかけることで、日付を設定せずにINSERTされることがなくなり、万が一入力し忘れてしまった場合はエラーになります。

制約を追加で設定するには、ALTER TABLE文を使ってデータ型の後に制約を記述します。
ログインして解答を見る

コメントのアイコン補足

制約にはいくつかありますが、今回登場した制約に加えて代表的なUNIQUE制約というものがあります。
UNIQUE制約をかけると、内容が重複することを妨げてくれます。

もし制約を複数指定する場合は、カンマで区切らずスペースでそのまま並べて記述しましょう。
SQLを学ぶなら現役エンジニア監修「甲賀コース」
キャンペーン

閉じる