什么是默認字段
在 MySQL 中,一個表的一列可以有一個默認值。當插入新數據時,如果沒有給該列賦值,該列將使用默認值。當更新數據時,如果沒有明確提到該列,該列的默認值將生效。
如何設置默認值
可以在創建表的時候,為列設置默認值。例如:
CREATE TABLE users ( id INT(11) AUTO_INCREMENT PRIMARY KEY, username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, created_at DATETIME DEFAULT NOW(), updated_at DATETIME DEFAULT NOW() ON UPDATE NOW() );
在上面的例子中,created_at
和updated_at
列的默認值分別是當前時間和更新時間。
如何修改默認值
可以使用 ALTER TABLE 語句修改默認值。例如:
ALTER TABLE users MODIFY COLUMN email VARCHAR(255) NOT NULL DEFAULT 'unknown@example.com';
這將把email
列的默認值更改為'unknown@example.com'
。
如何刪除默認值
可以使用 ALTER TABLE 語句刪除默認值。例如:
ALTER TABLE users ALTER COLUMN email DROP DEFAULT;
這將從email
列中刪除默認值。
注意事項
在使用默認值時需要注意以下幾點:
- 盡量避免在大文本類型(如
TEXT
或BLOB
)中使用默認值。 - 如果默認值包含特殊字符(如引號),需要使用適當的轉義。
- 默認值必須符合該列的數據類型。
- 修改默認值可能導致已存在的數據出現不匹配的情況,需要小心處理。