asp采用access數據庫搜索信息時(shí)因為日文片假名問(wèn)題提示“Microsoft JET Database Engine 錯誤80040e14”的解決方法
網(wǎng)絡(luò ) 2018/5/29 11:27:36 深山工作室 字體:
大 中 小 瀏覽 5757
程序是:asp
數據庫:access
在搜索時(shí)出現錯誤:
--------------------------------------------
錯誤提示:
Microsoft JET Database Engine 錯誤 '80040e14'
內存溢出
--------------------------------------------
其實(shí)ASP下出現80040e14錯誤一般有兩個(gè)問(wèn)題產(chǎn)生的:
1、數據表名使用了保留字;
2、一般出現在搜索like語(yǔ)句下,Access搜索日文片假名或者中文亂碼情況下會(huì )出現這個(gè)錯誤。
1、數據表名或者字段使用了保留字
這個(gè)問(wèn)題就比較簡(jiǎn)單了,因為不同數據庫的保留字是不同的,不過(guò)常見(jiàn)的有:ADD、ALL、ALTER、AND、BETWEEN、COLUMN、Count、COUNTER、CREATE、DATE、DATETIME、DOUBLE、FUNCTION、GROUP、GUID、INDEX、INSERT、INTO、LEFT、NAME、REAL等等,實(shí)在太多了。
解決的辦法就是將這個(gè)數據庫表或者字段加上中括號“[]”就可以了,比如:
select * from [counter] where id=1 //這個(gè)是數據庫表名
select [name], mobile * from addrbook //這個(gè)是字段
2、解決搜索like語(yǔ)句的錯誤
搜索中文亂碼或者日文片假名可能會(huì )產(chǎn)生這個(gè)問(wèn)題,尤其在A(yíng)ccess數據庫下。
一個(gè)簡(jiǎn)單的方法是:
把如下的語(yǔ)句:Sql = "select * From [qwnew] Where Title like '%"&keyword&"%' Order By id Desc"
換成:Sql = "select * from [qwnew] where InStr(1,LCase(Title),LCase('"&keyword&"'),0)<>0 order by id desc"
實(shí)例 sql="select * from qwnew where mername like '%"& keyword &"%' order by id desc"
換成 sql="select * from qwnew where InStr(1,LCase(mername),LCase('"& keyword &"'),0)<>0 order by id desc"
這個(gè)問(wèn)題據說(shuō)是Access的一個(gè)BUG,在SQL Server沒(méi)有發(fā)現這個(gè)問(wèn)題。原因絕大多數的情況是由于文章、標題、名字等內容的標題、名稱(chēng)或者關(guān)鍵字等字段內含有一些日本片假名造成的。這些非法字符包括:(不能寫(xiě)出來(lái),否則搜索該出錯了)。反正看到那26個(gè)日文字符就不要寫(xiě)就好了,保證沒(méi)這個(gè)問(wèn)題。
- 相關(guān)閱讀
- 鄧州市途鴻旅行社
- CSS中的單位一覽 包括寬度尺寸單位 顏色單位 角度單位
- uni-app判斷輸入內容是否符合要求
- 在圖片未知尺寸情況下,利用CSS把圖片垂直居中于div中心(2)
- 超過(guò)服務(wù)期限如何辦?
- ASP FSO的一些方法與擁有的屬性
- 深山旅行社網(wǎng)站管理系統 v1.7
- 青海眾信國際旅行社有限公司
- 共有0條關(guān)于《asp采用access數據庫搜索信息時(shí)因為日文片假名問(wèn)題提示“Microsoft JET Database Engine 錯誤80040e14”的解決方法》的評論
- 發(fā)表評論