今天被用了一下Access數據庫,結果被它的模糊查詢給折騰了一上午,究竟是用*仍是%?特此記下來sql
事情是這樣的,我用C#寫了個小的窗體程序,訪問Access數據庫進行一個模糊查詢,我先手工往Access數據庫裏填一些數據,而後用它的查詢工具想試一下效果,直接寫了一條語句:select * from news where title like '%公司%',運行沒結果,汗啊,不可能吧,剔除了like的模糊查詢它又沒問題,邪門了,上網找啊找,有說Access中* 爲匹配多個字符串,好吧把%號改成*號,運行,嘿,還真是哈,長見識了,難倒Access不支持標準SQL語句?疑惑之際,寫程序去,爲了快我直接就拼接了那條sql語句擱進去,調試運行,又沒結果,見鬼了?死馬當活馬醫,把*號改回%,這下又能夠了,簡直坑爹啊!數據庫
實踐告訴我:Access中* 爲匹配多個字符串,可是在C#編寫Access的模糊查詢中必須用 %才能查詢匹配%,可是,在Access中的SQL查詢中只能使用 *匹配查詢!工具