用零長度字符指示不存在數(shù)據(jù)
若要在 Microsoft Access 數(shù)據(jù)庫中指示不存在數(shù)據(jù),可以在“文本”或“備注”字段輸入零長度字符串 (零長度字符串:不含字符的字符串。可以使用零長度字符串來表明您知道該字段沒有值。輸入零長度字符串的方法是鍵入兩個彼此之間沒有空格的雙引號 (" ")。)。在連接到 Microsoft SQL Server 數(shù)據(jù)庫的 Microsoft Access 項目 (Microsoft Access 項目:與 Microsoft SQL Server 數(shù)據(jù)庫連接且用于創(chuàng)建客戶/服務(wù)器應(yīng)用程序的 Access 文件。項目文件中不包含任何數(shù)據(jù)或基于數(shù)據(jù)定義的對象(如表或視圖)。)中,可以在其數(shù)據(jù)類型 (數(shù)據(jù)類型:決定字段可擁有的數(shù)據(jù)類型的字段特征。數(shù)據(jù)類型包括 Boolean、Integer、Long、Currency、Single、Double、Date、String 和 Variant(默認)。)為 varchar 或 nvarchar 的字段中輸入零長度字符串。
打開數(shù)據(jù)表 (“數(shù)據(jù)表”視圖:以行列格式顯示來自表、窗體、查詢、視圖或存儲過程的窗口。在“數(shù)據(jù)表”視圖中,可以編輯字段、添加和刪除數(shù)據(jù),以及搜索數(shù)據(jù)。),或在“窗體”視圖 (“窗體”視圖:一個顯示窗體以便顯示或接受數(shù)據(jù)的窗口?!按绑w”視圖是添加和修改表中數(shù)據(jù)的主要方式。在該視圖中還可以更改窗體的設(shè)計。)中打開窗體。
若要在字段中輸入零長度字符串,請鍵入中間不帶空格的雙引號 (" ")。
即使在移到其他字段或?qū)ο髸r雙引號將消失,但該字段仍為零長度字符串。
Null值與零長度字符串的區(qū)別 (MDB)。
/*注釋 本主題中的信息僅適用于 Microsoft Access 數(shù)據(jù)庫 (.mdb)。*/
在查看含有 Null (Null:可以在字段中輸入或用于表達式和查詢,以標(biāo)明丟失或未知的數(shù)據(jù)。在 Visual Basic 中,Null 關(guān)鍵字表示 Null 值。有些字段(如主鍵字段)不可以包含 Null 值。) 值和零長度字符串 (零長度字符串:不含字符的字符串??梢允褂昧汩L度字符串來表明您知道該字段沒有值。輸入零長度字符串的方法是鍵入兩個彼此之間沒有空格的雙引號 (" ")。)的數(shù)據(jù)時,字段看起來是相同的,都沒有任何值。但可以用表達式 (表達式:算術(shù)或邏輯運算符、常數(shù)、函數(shù)和字段名稱、控件和屬性的任意組合,計算結(jié)果為單個值。表達式可執(zhí)行計算、操作字符或測試數(shù)據(jù)。)來區(qū)分 Null 值和零長度字符串。
在“設(shè)計”視圖 (“設(shè)計”視圖:顯示數(shù)據(jù)庫對象(包括:表、查詢、窗體、宏和數(shù)據(jù)訪問頁)的設(shè)計的窗口。在“設(shè)計”視圖中,可以新建數(shù)據(jù)庫對象和修改現(xiàn)有數(shù)據(jù)庫對象的設(shè)計。)中打開窗體、報表或數(shù)據(jù)訪問頁。
在查詢設(shè)計網(wǎng)格 (設(shè)計網(wǎng)格:在查詢“設(shè)計”視圖或“高級篩選/排序”窗口中設(shè)計查詢或篩選時所用的網(wǎng)格。對于查詢,該網(wǎng)格以前稱為“QBE 網(wǎng)格”。)的字段中,或在未綁定控件 (未綁定控件:未與基礎(chǔ)表、查詢中的字段或 SQL 語句連接的控件。未綁定控件通常用于顯示信息性文本或裝飾性圖片。)的控件來源中,鍵入下列表達式。將 fieldname 替換為包含 Null 值和零長度字符串的字段名稱。
=IIf(IsNull([fieldname]),"Unknown",Format([fieldname],"@;ZLS"))
如果字段包含 Null,則表達式返回 “Unknown”,如果字段包含零長度字符串,則表達式返回“ZLS”。否則,表達式將值返回到該字段中。
事情出現(xiàn)在工作中一次抓取網(wǎng)上信息的時候,可能考慮不全,抓到庫中的信息有部分是空的,這樣,我的必需將空的記錄刪除,試了好多辦法不行,最后才找到了上面的微軟的ACCESS幫助文檔才解決問題。
執(zhí)行:
sql="delete from news where IIf(IsNull([City]),'Unknown',Format([City],'@;ZLS'))='Unknown'" conn.execute(sql)
這樣問題就可以解決。
更多信息請查看IT技術(shù)專欄