ASP+Access如何提交一个表单,既实现插入记录,又实现对另个表更新记录。

一个数据库里面两个表,(user和user1)我想把前面三项插入到表Recordset2.
把第四项账户余额,更新到Recordset1.
拿dreamweaver对表达只能同时进行一项,该如何添加跟新的那个代码,请详细写写。<form id="form1" name="form1" method="POST" action="<%=MM_editAction%>"> <p>缴费号码: <label></label> <%=Request("haoma")%> <input name="haoma" type="hidden" id="haoma" value="<%=Request("haoma")%>" /> </p> <p>计费金额:<%=Request("jine")%> <input name="jine" type="hidden" id="jine" value="<%=Request("jine")%>" /> </p> <p>代理名称:<%= Session("MM_Username") %> <input name="daili" type="hidden" id="daili" value="<%= Session("MM_Username") %>" /> </p> <p>账户余额:<%=(Recordset2.Fields.Item("yushu").Value)%> <input name="zongshu" type="hidden" id="zongshu" value="<%=(Recordset1.Fields.Item("zongshu").Value)-Request("jine")%>" /> </p> <p> </p> <p> <label> <input type="submit" name="Submit" value="提交" /> </label> <label> <input type="reset" name="Submit2" value="返回" /> </label> </p> <input type="hidden" name="MM_insert" value="form1"> </form>

'看你这情况,应该是对插入和更新成功率是比较高的,要么就全成功,要么就全不成功保持原样
'----------------------------
'略去连接数据库的过程
'----------------------------
Dim haoma,jine,daili,Yue
haoma=Trim(request.Form("haoma")) '号码
jine=Trim(request.Form("jine")) '金额
daili=Trim(request.Form("daili")) '代理
Yue=Trim(request.Form("zongshu")) '余额
If Not isNumeric(jine) Then 'jine 只能由数字组成,非数字提交判断为填写错误
    Response.Write("<script>alert('请填写正确的金额!');history.back();</script>")
    Response.End()
End If
'-------------------------------
'进入SQL处理过程
'-------------------------------
conn.BeginTrans '事务开始
'除金额外,其它暂时按文本字串提交,SQL中,文本与数字变量入库的差别就是有没有单引号
SqlInsert="Insert Into [Recordset2] (haoma,jine,daili) Values('"&haoma&"',"&jine&",'"&daili&"')"
SqlUpdate="Update [Recordset1] set zongshu="&Yue&" where haoma='"&haoma&"'" 

conn.execute(SqlInsert) '插入 Recordset1
conn.execute(SqlUpdate) '更新 Recordset2

If conn.Errors.Count=0 Then
    conn.CommitTrans '没有conn错误,执行事务提交.大功告成的啦~
    Response.Write "数据执行完毕,没有错误!"  
Else
    conn.RollbackTrans '否则回滚
    Response.Write "有外星人干扰,数据未能完成,正在努力恢复!"  
End If

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-01-03
完全可以的,

值1=request("值1")
值2=request("值2")
值3=request("值3")
值4=request("值4")
conn1.execute "update user set 字段1='"&值1&"',字段2='"&值2&"',字段3='"&值3&"'"
conn2.execute "update user1 set 字段4='"&值4&"'"

请自己把以上中文改成你的相应变量追问

还是搞不懂。按你弄的,会出错。能不能写一段代码发给我。shujuku.mdb 地下两个Access表格user,和user1.把表单中的前三个值插入到user1里面,后一个值更新到user里面的一个值里面。

追答

本回答被提问者和网友采纳

asp+access 添加多条记录+更新记录
set rsp=server.createobject("adodb.recordset")sql="select * from P_Queue where CardNo='"&rs("CardID")&"' and PassWord='"&rs("PassWord")&"'"rsp.open sql,conn,1,3 if rsp.eof and rsp.bof then CardID=rs("ID")CardType=rs("ClassID")CardNo=Replace(request.Form("Account"...

asp+access 问题高手帮忙?
下载,而现在提供的很多asp空间都是只支持access数据库,这样一来, asp+access的安全问题就显得很突出了。 1.Access数据库的存储隐患 在ASP+Access应用系统中,如果获得或者猜到Access数据库的存储路 径和数据库名,则该数据库就可以被下载到本地。 2.Access数据库的解密隐患 由于Access数据库的加密机制非常简单,所以...

asp如何动态的向access中的一张已有表增添字段?
一、insert into 新增一个记录的insert into 语法如下:insert into 表 [(字段1[,字段2[, ...]])]values (值1[,值2[, ...])二、Insert Into...Select 若要新增多个记录,可以使用insert into ...select,语法如下:insert into 表 [IN 外部资料库] [(字段1[,字段2[, ...]])]selec...

ASP+ACCESS多记录同时更新
sql=" update a set data2='"&sex&"',data3='"&class&"' where name='"&nameArr(i)&"'"conn.execute(sql)next

asp中更新access数据库记录,如数据库中有原来记录则更新,如没有记录则...
SET DRS=SERVER.CreateObject("ADODB.RECORDSET") '建立数据流 DSQL="select Top 1 * from [chengji] where XX="&条件变量 DRS.OPEN DSQL,CONN,3,3 '打开 IF NOT(DRS.BOF AND DRS.EOF) THEN '记录存在' DRS("要更新的字段_A")=要更新的字段变量_A DRS("要更新的字段_...

用asp如何同时向ACCESS数据库中添加多条记录
Sub WriteData()Dim recCnt,i Dim UserID,UserName,Score Dim SqlStr \/\/用于动态取得需要录入多少条记录 recCnt=cint(request.form("recCnt"))\/\/批量录入数据 for i=1 to recCnt UserID=trim(request.form("UserID")(i))UserName=trim(request.form("UserName")(i))score=trim(request.form...

ASP+ACCESS 修改记录代码问题。
改成这样,如果记录存在,就更新,如果记录不存在,就增加一条新纪录。dim type1,type2,title,cont,ly,id type1=request.form("type1")type2=request.form("type2")title=request.form("title")cont=request.form("cont")id=request.form("id")set rs=server.createobject("adodb.recordset")sq...

通过ASP页面提交表单添加进ACCESS数据库
对的,楼上那个方法你可以试下,要是不行,你就试这种方法看。Set rs= Server.CreateObject("ADODB.Recordset")sql="Select * From user_tel"rs.open sql,conn,3,3 rs.addnew rs("user_id")=user_id rs("tel_nul")=tel_nul rs("slbh") =slbh rs.update rs.close ...

怎么同时向ACCESS数据库写入多条记录
您好!木头贝贝为你回答此问题:刚刚仔细的看了你问题的需求,觉得你可以在插入数据页面的时候可以使用for循环,可以这样:for(int i=0;i<3;i++){\/\/此处可以调用插入数据的方法}这样可以很好的达到你的需求,而且相对比较简单些;我只是个建议,你可以尝试下,如果没有意外的话就可以达到你的需求!

关于ASP如何与ACCESS数据库连接问题
首先在外圈先弄一个表单。把每个文本框都赋一个ID或者NAME。在下面做一个提交按钮提交表单。全部做好之后,首先链接数据库。连接好之后 set rs=server.createobject("adodb.recordset")sql="select * from 表名 where (id is null)"rs.open sql,conn,1,3 rs.addnew 下面写的就是你要插入的字段...

相似回答