MySQLでフィールドにデフォルト値を設定する方法を教えてください
MySQLでは、ALTER TABLE文を使用してフィールドのデフォルト値を設定できます。
手順は次のとおりです。
- MySQLコマンドラインやMySQLクライアントツールを開く。
- ターゲットデータベースに接続します。
- ALTER TABLEステートメントを使用してテーブル構造を変更し、フィールドのデフォルト値を設定します。構文は次のとおりです。
ALTER TABLE 表名 ALTER COLUMN 列名 SET DEFAULT 默认值;
例えば、「users」という名のテーブルに、「age」という名の列のデフォルト値を30に設定する例は次のとおりです。
ALTER TABLE users ALTER COLUMN age SET DEFAULT 30;
- ALTER TABLEを実行するとフィールドのデフォルト値は更新されます.
要注意
- ALTER TABLE文は既存のテーブルに対してのみフィールドのデフォルト値を変更でき、フィールドを追加してデフォルト値を設定する場合は、ALTER TABLE文のADD COLUMN句を使用してください。
- デフォルト値を削除するには、ALTER TABLEステートメントのALTER COLUMN句を使用して、デフォルト値をNULLに設定するか、DEFAULTキーワードを使用します。
- デフォルト値がフィールドに既に存在する場合、ALTER TABLE ステートメントを使用して新しいデフォルト値を設定すると、既存のデフォルト値が上書きされます。
- 既にデータのある項目のデフォルト値を変更しても、既存のデータは変更されず、新しいデータの挿入時にのみ新しいデフォルト値が適用されます。既存のデータの値を更新する場合は、UPDATE 文を使用してください。
- なお、フィールドのデフォルト値の設定は、INSERT文で新規データを挿入した際にそのフィールドの値が指定されなかった場合にのみ適用されます。INSERT文でそのフィールドの値を明示的に指定した場合、デフォルト値の影響を受けません。