想请教个问题。 我想把access中的A字段的数据首100个字符写入B字段中。 但老是出错。 我写的代码: <!--#include file="conn.asp"--> <% dim xx,yy strsql="select * from PE_Article" set rs = Server.CreateObject("ADODB.Recordset") rs.Open strsql, conn, 1, 1 while not rs.eof xx=left(rs("title"),100) set rs=server.CreateObject("adodb.recordset") sqlstr="SELECT * PE_Article where ArticleID=rs(ArticleID)" rs.open sqlstr,conn,1,3 rs.addnew rs("intro")=xx rs.update rs.movenext wend rs.close %> 高手,能不能帮我改改!
代码: <!--#include file="conn.asp"--> <% dim xx,yy strsql="select * from PE_Article" set rs = Server.CreateObject("ADODB.Recordset") rs.Open strsql, conn, 1, 2 while not rs.eof rs("intro")=left(rs("title"),100) rs.update rs.movenext wend rs.close %> 你在循环中建立 Recordset 对象,同外层的 Recordset 对象名一样,当然会出错。
<!--#include file="conn.asp"--> <% dim xx,yy set rs=server.CreateObject("adodb.recordset") sqlstr="SELECT * PE_Article where ArticleID=rs(ArticleID)" rs.open sqlstr,conn,1,3 while not rs.eof xx=left(rs("title"),100) rs("intro")=xx rs.update rs.movenext loop rs.close set rs=nothing %> 这样不知道是否符合程序功能要求
<!--#include file="conn.asp"--> exec="select * form 表A " set objrs=server.createobject("adodb.recordset") objrs.open exec,1,1 Do while not objrs.eof xx=left(字段A,100) objrs("字段B")=xx objrs.addnew objrs.movenext Loop response.write "数据转移完成!" objrs.close set objrs=nothing conn.close set conn=nothing 凑合着吧。。不知有米有用
<!--#include file="conn.asp"--> <% conn.Execute("Update PE_Article Set intro=left(title,100)") conn.Close Set conn=Nothing %>