`
cpsing
  • 浏览: 71124 次
  • 来自: ...
最近访客 更多访客>>
社区版块
存档分类
最新评论

大数据量处理

阅读更多

 看看这个,异曲同工,永远不超时

该程序是针对非常庞大的数据库开发的,没有用循环
用途:
     对过万条数据的数据库字段内容批量替换
代码:
<%
'//数据库连接
    Dim BeeYee_DbName,Connstr,Conn,intSn1
    Dim Content,Num,intSn,intIdNo,strCodea,strCodec,Rs,strSql
    Server.ScriptTimeOut = 800
    BeeYee_DbName="transfer"         '修改此处为你的SQL Server 数据库名称
    YourServer = "seven"       '修改此处为你的Sql Server数据库地址
    YourUid  = "sa"                   '修改此处为你的数据库用户名
    YourPassword = "123"           '修改此处为你的数据库密码    
    Connstr = "Driver={SQL Server};Server="&YourServer&";Uid="&YourUid&";Pwd="&YourPassword&";Database="&BeeYee_DbName
    Set Conn=Server.CreateObject("ADODB.CONNECTION")
    On Error Resume Next
    Conn.Open Connstr
    If Err<>0 Then
        err.Clear
        Set Conn = Nothing
        Response.Write "<div align=center><br/><br/><br/>连接SqlServer数据库出错,请检查相关设置……</div>"
        Response.End   
    End If
'//数据处理部分

    intSn = Request("Sn")
    intIdNo = Request("IdNo")
    If intSn = "" Or Not isNumeric(intSn) Then
        intSn = 0
        intSn1 = 0
    Else
        intSn = CLng(intSn)
        intSn1 = intSn
    End If
    If intIdNo = "" Or Not isNumeric(intIdNo) Then
        intIdNo = 0
    Else
        intIdNo = CLng(intIdNo)
    End If
    strCodea="/newe"                                    '//需要查询是否包含的字符串
    strCodeb="/news"                '//替换字符串
    strSql = "Select Top 1 Id,Content,Uptime From News where id>"&intIdNo&" And siteid=1 order by id"
    Set Rs = Server.CreateObject("adodb.recordset")
    Rs.Open strSql,conn,1,3
    If not(rs.eof oR rs.bof) then
        Content = Rs("content")
        Num = instr(content,strCodea)
        If Num>0 then           
            Content=Replace(content,strCodea,strCodeb)   
            Rs("Content") = Content
            Rs("Uptime") = now()
            Rs.Update
            intSn = intSn + 1
        End If
        intIdNo = Rs("Id")
        Rs.Close
        Set Rs = Nothing
        Response.Write("<br/><br/><br/><Div align=center>正在转换第<font color=red>"&intSn&"</font>条新闻....</Div>")
        If intSn = intSn1 Then Response.Write("<br/><br/><br/><Div align=center>新闻中没有要转换的东西,程序继续转换下一篇</Div>")
        Response.write("<meta http-equiv=""refresh"" content=""0;url=?Sn="&intSn&"&IdNo="&intIdNo&""">")
    Else
        Response.write("<br/><br/><br/><Div align=center>转换完毕!!共转换<font color=red>"&intSn&"</font>条新闻.</Div>")
        Rs.Close
        Set Rs = Nothing
        Response.End()
    End If
   
%>

另外:

可以把数据处理放在客户端



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics