刪除Access數(shù)據(jù)庫(kù)中的空記錄

2010-08-28 10:51:44來源:西部e網(wǎng)作者:

 

用零長(zhǎng)度字符指示不存在數(shù)據(jù)

若要在 Microsoft Access 數(shù)據(jù)庫(kù)中指示不存在數(shù)據(jù),可以在“文本”或“備注”字段輸入零長(zhǎng)度字符串 (零長(zhǎng)度字符串:不含字符的字符串?梢允褂昧汩L(zhǎng)度字符串來表明您知道該字段沒有值。輸入零長(zhǎng)度字符串的方法是鍵入兩個(gè)彼此之間沒有空格的雙引號(hào) (" ")。)。在連接到 Microsoft SQL Server 數(shù)據(jù)庫(kù)的 Microsoft Access 項(xiàng)目 (Microsoft Access 項(xiàng)目:與 Microsoft SQL Server 數(shù)據(jù)庫(kù)連接且用于創(chuàng)建客戶/服務(wù)器應(yīng)用程序的 Access 文件。項(xiàng)目文件中不包含任何數(shù)據(jù)或基于數(shù)據(jù)定義的對(duì)象(如表或視圖)。)中,可以在其數(shù)據(jù)類型 (數(shù)據(jù)類型:決定字段可擁有的數(shù)據(jù)類型的字段特征。數(shù)據(jù)類型包括 Boolean、Integer、Long、Currency、Single、Double、Date、String 和 Variant(默認(rèn))。)為 varchar 或 nvarchar 的字段中輸入零長(zhǎng)度字符串。

打開數(shù)據(jù)表 (“數(shù)據(jù)表”視圖:以行列格式顯示來自表、窗體、查詢、視圖或存儲(chǔ)過程的窗口。在“數(shù)據(jù)表”視圖中,可以編輯字段、添加和刪除數(shù)據(jù),以及搜索數(shù)據(jù)。),或在“窗體”視圖 (“窗體”視圖:一個(gè)顯示窗體以便顯示或接受數(shù)據(jù)的窗口!按绑w”視圖是添加和修改表中數(shù)據(jù)的主要方式。在該視圖中還可以更改窗體的設(shè)計(jì)。)中打開窗體。

若要在字段中輸入零長(zhǎng)度字符串,請(qǐng)鍵入中間不帶空格的雙引號(hào) (" ")。

即使在移到其他字段或?qū)ο髸r(shí)雙引號(hào)將消失,但該字段仍為零長(zhǎng)度字符串。

Null值與零長(zhǎng)度字符串的區(qū)別 (MDB)。

/*注釋 本主題中的信息僅適用于 Microsoft Access 數(shù)據(jù)庫(kù) (.mdb)。*/

在查看含有 Null (Null:可以在字段中輸入或用于表達(dá)式和查詢,以標(biāo)明丟失或未知的數(shù)據(jù)。在 Visual Basic 中,Null 關(guān)鍵字表示 Null 值。有些字段(如主鍵字段)不可以包含 Null 值。) 值和零長(zhǎng)度字符串 (零長(zhǎng)度字符串:不含字符的字符串?梢允褂昧汩L(zhǎng)度字符串來表明您知道該字段沒有值。輸入零長(zhǎng)度字符串的方法是鍵入兩個(gè)彼此之間沒有空格的雙引號(hào) (" ")。)的數(shù)據(jù)時(shí),字段看起來是相同的,都沒有任何值。但可以用表達(dá)式 (表達(dá)式:算術(shù)或邏輯運(yùn)算符、常數(shù)、函數(shù)和字段名稱、控件和屬性的任意組合,計(jì)算結(jié)果為單個(gè)值。表達(dá)式可執(zhí)行計(jì)算、操作字符或測(cè)試數(shù)據(jù)。)來區(qū)分 Null 值和零長(zhǎng)度字符串。

在“設(shè)計(jì)”視圖 (“設(shè)計(jì)”視圖:顯示數(shù)據(jù)庫(kù)對(duì)象(包括:表、查詢、窗體、宏和數(shù)據(jù)訪問頁(yè))的設(shè)計(jì)的窗口。在“設(shè)計(jì)”視圖中,可以新建數(shù)據(jù)庫(kù)對(duì)象和修改現(xiàn)有數(shù)據(jù)庫(kù)對(duì)象的設(shè)計(jì)。)中打開窗體、報(bào)表或數(shù)據(jù)訪問頁(yè)。

在查詢?cè)O(shè)計(jì)網(wǎng)格 (設(shè)計(jì)網(wǎng)格:在查詢“設(shè)計(jì)”視圖或“高級(jí)篩選/排序”窗口中設(shè)計(jì)查詢或篩選時(shí)所用的網(wǎng)格。對(duì)于查詢,該網(wǎng)格以前稱為“QBE 網(wǎng)格”。)的字段中,或在未綁定控件 (未綁定控件:未與基礎(chǔ)表、查詢中的字段或 SQL 語句連接的控件。未綁定控件通常用于顯示信息性文本或裝飾性圖片。)的控件來源中,鍵入下列表達(dá)式。將 fieldname 替換為包含 Null 值和零長(zhǎng)度字符串的字段名稱。

=IIf(IsNull([fieldname]),"Unknown",Format([fieldname],"@;\ZLS"))

如果字段包含 Null,則表達(dá)式返回 “Unknown”,如果字段包含零長(zhǎng)度字符串,則表達(dá)式返回“ZLS”。否則,表達(dá)式將值返回到該字段中。

事情出現(xiàn)在工作中一次抓取網(wǎng)上信息的時(shí)候,可能考慮不全,抓到庫(kù)中的信息有部分是空的,這樣,我的必需將空的記錄刪除,試了好多辦法不行,最后才找到了上面的微軟的ACCESS幫助文檔才解決問題。

執(zhí)行:

sql="delete from news where IIf(IsNull([City]),'Unknown',Format([City],'@;\ZLS'))='Unknown'"

conn.execute(sql)

這樣問題就可以解決。

關(guān)鍵詞:Access

贊助商鏈接: