加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP代码实现自动清掉替换ACCESS(MDB)

发布时间:2023-05-22 14:10:39 所属栏目:Asp教程 来源:
导读:我们都知道ACCESS是ASP的亲密伙伴。因为两种最简单的东西碰在一起总能迸发出火花。 然而,当我们过滤不严格的时候经常出现日文字符,这个时候搜索之后就会出现日文溢出。

此时我们通常能想到的想法是找一个exe程
我们都知道ACCESS是ASP的亲密伙伴。因为两种最简单的东西碰在一起总能迸发出火花。 然而,当我们过滤不严格的时候经常出现日文字符,这个时候搜索之后就会出现日文溢出。
 
此时我们通常能想到的想法是找一个exe程序,把这个问题解决掉。我原来用C#写过这样一个类似的程序。
 
Google里面应该能找到我以前写的那个。就不说了。
 
后来某一天,我发现ASP就能实现。我当时真的觉得自己太屎了。
 
不过ASP的这种方法很不好。容易造成系统崩溃(如果数据库大)。
 
所以只是写在这里。算是抛砖引玉。
 
'下面我解释一下下:
 
Function TransferJapanDc9CnInDB()
 
On Error Resume Next
 
Err.Clear
 
Dim objRS,i
 
Set objRS=Server.CreateObject("ADODB.Recordset")
 
objRS.CursorType = adOpenKeyset
 
objRS.LockType = adLockReadOnly
 
objRS.ActiveConnection=objConn
 
objRS.Source="SELECT * FROM [blog_Comment]"
 
objRS.Open()
 
If (Not objRS.bof) And (Not objRS.eof) Then
 
For i=1 to objRS.RecordCount
 
'遍历,看看有没有日文,如果有,就溢出了,随便搜索一个东西就行了。搜什么无所谓。因为是遍历ACCESS只要指针移动到日文就溢出。
 
objConn.Execute("SELECT * FROM [blog_Comment] WHERE comm_ID="&objRS("comm_ID")&" AND [comm_Content] LIKE '%URL%'")
 
If Err.Number=-2147217900 Then
 
'因为是on err继续 所以这里找到溢出的错误代码,这个是自己debug出来的,实际上不是从什么地方找的。
 
objConn.Execute("UPDATE [blog_Comment] SET [comm_Content]='"&FilterSQL(Japan2Html(objRS("comm_Content")))&"',[comm_Author]='"&FilterSQL(Japan2Dc9CnHtml(objRS("comm_Author")))&"' WHERE comm_ID="&objRS("comm_ID")&" ")
 
'这个就是把日文替换一下,思路是不是很巧妙。恩。不过数据库庞大的化,反复溢出就会很出问题的。内存宝宝会哭的。
 
Err.Clear
 
End If
 
objRS.MoveNext
 
Next
 
End If
 
objRS.Close
 
Set objRS=Nothing
 
'www.dc9.cn 07/11/28
 
End Function

Function Japan2Dc9CnHtml(source)
 
source=Replace(source,"ガ","ガ")
 
source=Replace(source,"ギ","ギ")
 
source=Replace(source,"ア","ア")
 
source=Replace(source,"ゲ","ゲ")
 
source=Replace(source,"ゴ","ゴ")
 
source=Replace(source,"ザ","ザ")
 
source=Replace(source,"ジ","ジ")
 
source=Replace(source,"ズ","ズ")
 
source=Replace(source,"ゼ","ゼ")
 
source=Replace(source,"ゾ","ゾ")
 
source=Replace(source,"ダ","ダ")
 
source=Replace(source,"ヂ","ヂ")
 
source=Replace(source,"ヅ","ヅ")
 
source=Replace(source,"デ","デ")
 
source=Replace(source,"ド","ド")
 
source=Replace(source,"バ","バ")
 
source=Replace(source,"パ","パ")
 
source=Replace(source,"ビ","ビ")
 
source=Replace(source,"ピ","ピ")
 
source=Replace(source,"ブ","ブ")
 
source=Replace(source,"ブ","ブ")
 
source=Replace(source,"プ","プ")
 
source=Replace(source,"ベ","ベ")
 
source=Replace(source,"ペ","ペ")
 
source=Replace(source,"ボ","ボ")
 
source=Replace(source,"ポ","ポ")
 
source=Replace(source,"ヴ","ヴ")
 
Japan2Html=source
 
End Function
 
顺便说一下,最近我的blog反复被hack,搞得我很郁闷,因为是阿拉伯人或者是以色列人干的,所以没法沟通。
 
我还找不出来他们是怎么干的。
 
真的很郁闷。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章