| 特性 | NULL | 零長度字串 (ZLS) |
|---|---|---|
| 含義 | 值不存在/未知 | 明確知道「沒有值」 |
| 輸入方式 | 留空或 Ctrl+0 |
輸入 "" 兩個雙引號 |
| 判斷函數 | IsNull([Field]) |
Format([Field], "@;ZLS") = "ZLS" |
| 主鍵允許 | 不允許 | 允許(但不建議) |
SELECT
IIF(IsNull([City]), 'NULL',
IIF(Format([City], '@;ZLS') = 'ZLS', 'ZLS', 'VALUE')) AS CityStatus
FROM News;
視業務定義「空白」為 NULL 或 ZLS 或兩者皆是:
-- 刪除 City 為 NULL 或 ZLS 的記錄
DELETE FROM News
WHERE IsNull([City]) OR Format([City], '@;ZLS') = 'ZLS';
-- 僅刪除 ZLS(保留 NULL)
DELETE FROM News
WHERE Format([City], '@;ZLS') = 'ZLS';
-- 僅刪除 NULL(保留 ZLS)
DELETE FROM News
WHERE IsNull([City]);
Is Null Or ="" → 改為刪除查詢 → 執行。Dim db As DAO.Database, rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT * FROM News WHERE IsNull(City) OR City = ''")
Do Until rs.EOF
rs.Delete
rs.MoveNext
Loop
Required = Yes + AllowZeroLength = No 強制不可空。BeforeUpdate 事件檢查 Me.City & "" = "" 取消更新。IF(ISBLANK(A2), "N/A", A2) 預填預設值。