MySQLでカラムにデフォルト値をセットする方法
MySQLでは、DEFAULTキーワードを使ってフィールドのデフォルト値を設定できます。
たとえば、「users」という名前のテーブルにユーザーの状態を表す「status」というフィールドがあり、デフォルトで「active」だったと仮定します。そのフィールドにデフォルト値を設定するには、次の構文を使用できます。
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(100) NOT NULL,
status VARCHAR(50) DEFAULT 'active'
);
先の例では、status フィールドの初期値が ‘active’ に設定されています。
既存のテーブルにデフォルト値を追加する場合は「ALTER TABLE」ステートメントを利用できます。例えば、usersテーブルのstatusカラムにデフォルト値「active」を追加したい場合は、以下のステートメントを使用します。
ALTER TABLE users ALTER COLUMN status SET DEFAULT 'active';
デフォルト値を持つデータ行が既に存在していて、それらの行に新しいデフォルト値を適用したい場合は、以下のステートメントを使用できます。
UPDATE users SET status = 'active' WHERE status IS NULL;
MySQLのフィールドにデフォルト値を設定するための方法です。