| 概念 | 含義 | 輸入方式 | 判斷函數 | 索引行為 |
|---|---|---|---|---|
| Null | 值缺失/未知 | 留空、不輸入 | IsNull()、Is Null | 不計入唯一索引 |
| 零長度字符串 (ZLS) | 已知無值,確認為空 | 輸入 "" (雙引號) | Len()=0、="" | 計入唯一索引,唯一約束衝突 |
DELETE FROM YourTable
WHERE Col1 IS NULL AND Col2 IS NULL AND Col3 IS NULL ...;
-- 單列
DELETE FROM YourTable WHERE KeyCol IS NULL OR KeyCol = '';
-- 多列任一為空
DELETE FROM YourTable
WHERE Col1 IS NULL OR Col1 = ''
OR Col2 IS NULL OR Col2 = '';
UPDATE YourTable SET Col1 = NULL WHERE Col1 = '';
UPDATE YourTable SET Col2 = NULL WHERE Col2 = '';
-- 後續只需判斷 IS NULL
菜單:文件 → 信息 → 修復並壓縮數據庫
效果:重建索引、回收空間、修復損壞、重置自動編號 (尾部刪除後)
Public Sub CompactAndRepairDB(SourcePath As String, Optional DestPath As String = "")
On Error GoTo ErrHandler
If DestPath = "" Then DestPath = SourcePath & "_compacted"
' 確保目標不存在
If Dir(DestPath) <> "" Then Kill DestPath
' 執行壓縮
Application.CompactRepair SourceFile:=SourcePath, DestinationFile:=DestPath
' 覆蓋原文件 (可選)
' Kill SourcePath
' Name DestPath As SourcePath
MsgBox "壓縮完成: " & DestPath
Exit Sub
ErrHandler:
MsgBox "錯誤: " & Err.Description
End Sub
IS NULL OR = '' 組合條件