始める無料で始める

制約とデータのデフォルト値

ここでは制約付きのテーブル作成を練習します! 多くの場合、ある列を一意にしたり、NULL を許可したり、正の値に限定したり、別のテーブルの列と関連付けたりする必要があります。こうしたときに使うのが制約です。

動画で Jason が紹介したように、制約に加えて、default キーワードを列に指定することで、値が渡されなかった場合のデフォルト値も設定できます。

この演習はコースの一部です

Pythonで学ぶデータベース入門

コースを見る

演習の手順

  • TableColumnStringIntegerFloatBoolean はすでに sqlalchemy からインポートされています。
  • data という新しいテーブルを作成します。name(String)は一意、count(Integer)はデフォルトを 1amount(Float)、valid(Boolean)はデフォルトを False にします。
  • データベースにテーブルを作成し、data のテーブル詳細を出力するために回答を提出してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import Table, Column, String, Integer, Float, Boolean from sqlalchemy
from sqlalchemy import Table, Column, String, Integer, Float, Boolean

# Define a new table with a name, count, amount, and valid column: data
data = Table('data', metadata,
             Column('name', String(255), unique=____),
             Column('count', Integer(), default=____),
             Column('amount', Float()),
             Column('valid', Boolean(), default=____)
)

# Use the metadata to create the table
metadata.create_all(engine)

# Print the table details
print(repr(metadata.tables['data']))
コードを編集して実行