在建立資料表時指定 `DEFAULT` 值,能將資料庫設計邏輯與應用程式代碼解耦。未來透過 `ALTER TABLE` 修改預設值,應用程式即刻生效,無需修改代碼重新部署。
CREATE TABLE t1 (
id$ INTEGER NOT NULL,
charcol CHAR DEFAULT 'Y',
datecol DATE DEFAULT SYSDATE,
strcol VARCHAR2(30) DEFAULT USER,
intcol INTEGER DEFAULT 12
);
| 欄位 | 型別 | 預設值 | 應用場景 |
|---|---|---|---|
| charcol | CHAR | 'Y' | 旗標/狀態欄位,預設啟用 |
| datecol | DATE | SYSDATE | 建立時間戳記,自動記錄插入當下時間 |
| strcol | VARCHAR2 | USER | 記錄建立資料的資料庫使用者 |
| intcol | INTEGER | 12 | 數值型預設常數 |
-- 將 charcol 預設值從 'Y' 改為 'N'
ALTER TABLE t1 MODIFY (charcol DEFAULT 'N');
-- 移除預設值(恢復為 NULL)
ALTER TABLE t1 MODIFY (intcol DEFAULT NULL);