1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

如何把access中的A字段的数据写入B字段中。

本帖由 cmcm1632006-02-20 发布。版面名称:后端开发

  1. cmcm163

    cmcm163 New Member

    注册:
    2005-12-23
    帖子:
    59
    赞:
    0
    想请教个问题。


    我想把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
    %>



    高手,能不能帮我改改!
     
  2. 风

    New Member

    注册:
    2005-09-05
    帖子:
    145
    赞:
    0
    代码:
    <!--#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 对象名一样,当然会出错。
     
  3. Tameway

    Tameway New Member

    注册:
    2005-09-06
    帖子:
    1,286
    赞:
    8
    <!--#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
    %>

    这样不知道是否符合程序功能要求
     
  4. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    直接在数据库access里建立查询,执行下面的SQL语句,完成。

    update PE_Article Set intro=left(title,100)


    啊哦,,楼上两大虾,,不如我的一句,,嘎嘎。。
     
    #4 小叶, 2006-02-20
    最后编辑: 2006-02-20
  5. 不学无术

    不学无术 Ulysses 的元神

    注册:
    2005-08-31
    帖子:
    16,714
    赞:
    39
    温馨提示:回答问题,要看提问人的“语法环境”。

    :D
     
  6. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    可以实现哦,,,他的记录本来就存在的,你只要建立一个新的查询就ok了。
     
  7. 不学无术

    不学无术 Ulysses 的元神

    注册:
    2005-08-31
    帖子:
    16,714
    赞:
    39
    我的意思是尽可能按照他的思路去指导——他使用的是 ADO ,你却要告诉他在 Access 中用查询。

    ;)
     
  8. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    那还不一样!?
     
  9. Tameway

    Tameway New Member

    注册:
    2005-09-06
    帖子:
    1,286
    赞:
    8

    绝对不一样哦
     
  10. 风狼

    风狼 New Member

    注册:
    2005-10-01
    帖子:
    7,452
    赞:
    25
    肯定不一样啦
    一个是ADO的方法
    一个是ACCESS的方法。。

    不过我都不懂。哇哈哈
     
  11. 风狼

    风狼 New Member

    注册:
    2005-10-01
    帖子:
    7,452
    赞:
    25
    <!--#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


    凑合着吧。。不知有米有用
     
  12. 阿木

    阿木 New Member

    注册:
    2005-11-08
    帖子:
    1
    赞:
    0
    <!--#include file="conn.asp"-->
    <%
    conn.Execute("Update PE_Article Set intro=left(title,100)")
    conn.Close
    Set conn=Nothing
    %>
     
  13. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    yes,,俺不会的。。
     
  14. 不学无术

    不学无术 Ulysses 的元神

    注册:
    2005-08-31
    帖子:
    16,714
    赞:
    39
    不错不错,集思广益。

    :)