asp用access like查询的时候出错,显示内存溢出。

好像是因为有日文片假名的原因,不过不知道怎么解决。... 好像是因为有日文片假名的原因,不过不知道怎么解决。 展开
 我来答
知识小苗
2012-03-09 · 哺育小苗苗们的知识学院。
知识小苗
采纳数:508 获赞数:5041

向TA提问 私信TA
展开全部
这个问题是ACCESS固有的BUG,不能从根本上解决,建议将日文通过字符变换进行存储,显示时再转换过来,方法有:
server.HTMLencode()
server.HTMLdecode()

或者有最简单的办法:escape()、unescape()

实例:
如要在ACCESS数据库中存储日文片假名XXX,则存储时使用:escape(xxx),取出时用unescape(xxx)。
=====================
如果以上不能解决问题,建议用下面的函数进行变换:
Function EncodeJP(StrHTML)
StrHTML=Replace(StrHTML,"ガ","")
StrHTML=Replace(StrHTML,"ギ","")
StrHTML=Replace(StrHTML,"ア","")
StrHTML=Replace(StrHTML,"ゲ","")
StrHTML=Replace(StrHTML,"ゴ","")
StrHTML=Replace(StrHTML,"ザ","")
StrHTML=Replace(StrHTML,"ジ","")
StrHTML=Replace(StrHTML,"ズ","")
StrHTML=Replace(StrHTML,"ゼ","")
StrHTML=Replace(StrHTML,"ゾ","")
StrHTML=Replace(StrHTML,"ダ","")
StrHTML=Replace(StrHTML,"ヂ","")
StrHTML=Replace(StrHTML,"ヅ","")
StrHTML=Replace(StrHTML,"デ","")
StrHTML=Replace(StrHTML,"ド","")
StrHTML=Replace(StrHTML,"バ","")
StrHTML=Replace(StrHTML,"パ","")
StrHTML=Replace(StrHTML,"ビ","")
StrHTML=Replace(StrHTML,"ピ","")
StrHTML=Replace(StrHTML,"ブ","")
StrHTML=Replace(StrHTML,"ブ","")
StrHTML=Replace(StrHTML,"プ","")
StrHTML=Replace(StrHTML,"ベ","")
StrHTML=Replace(StrHTML,"ペ","")
StrHTML=Replace(StrHTML,"ボ","")
StrHTML=Replace(StrHTML,"ポ","")
StrHTML=Replace(StrHTML,"ヴ","")
EncodeJP=StrHTML
End Function

将这个数据库循环变换
set rs=server.createObject("adodb.recordset")
rs.open "查询语句",conn,1,2
do while not rs.eof
rs("content")=EncodeJP( rs("content"))'此处为举例
rs.update
rs.movenext
loop
rs.close
set rs=nothing
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
36557832
2012-03-18 · TA获得超过11.4万个赞
知道顶级答主
回答量:7万
采纳率:1%
帮助的人:4.6亿
展开全部
应该不会有这个问题的,你把你的代码贴出。记得acess的like用法和sql的不一样~通配符不一样
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式