ASP错误 80040e14 内存溢出
Microsoft JET Database Engine 错误 '80040e14'
内存溢出
主要原因:
1、字段或表名使用了保留字,如:select、insert、date等,不要使用保留字,或在sql中相应字段加方括号,如 [select]
2、要查询的字段包含特殊字符,常见的有bom标记等不可见字符,可以在数据保存时使用正则过滤掉,我的做法:regReplace(str, "[\ufeff\u2028\u2029\xa0]+", "")
3、包含日文字符,并不是所有的日文字符都有问题,而是只有26个有问题,这个是access的bug,只能在保存数据时进行转换成自定义的字符,查询和显示时再转换回去。如果不需要日文查询,可以在保存时,把相应日文转义。如你转义为你
我的做法:
Function jpEncode(ByVal s) Dim jpArr, i '26个日文字符的unicode代码 jpArr=array(12468, 12460, 12462, 12464, 12466, 12470, 12472, 12474,_ 12485, 12487, 12489, 12509, 12505, 12503, 12499, 12497,_ 12532, 12508, 12506, 12502, 12500, 12496, 12482, 12480,_ 12478, 12476) For i=0 To Ubound(jpArr) s=Replace(s, ChrW(jpArr(i)), "&#"&jpArr(i)&";") Next jpEncode=s End Function