==========================================
表1:biao1
主键字段:id
字段的值:自动编号字段:OrderNum'订单编号
字段值:11122015390694'订单号字段:UserId
字段值:会员账号。字段:OrderSum'商品总金额
字段的值:256
===========================================
表2:biao2
主键字段:id
字段的值:自动编号字段:OrderNum'订单编号
字段值1:11122015390694'订单号
字段值2:11122015390694'订单号(因一个订单中有多个商品所以就出现了多个订单号的状况)字段:UserId
字段值1:会员账号。
字段值2:会员账号。字段:CommodityId’商品的编号
字段值1:00052
字段值2:00031字段:Number'购买的商品数量
字段值1:数量为1
字段值2:数量为2字段:Totalprice’每款产品的总价
字段值1:46
字段值2:200'共两件商品,单价100元字段:yjfs’邮寄方式(选择的快递公司)
字段值1:申通快递
字段值2:申通快递字段:yf'邮费
字段值1:10’邮递的费用
字段值2:10'邮递的费用
============================================现在我的问题就是要怎么实现能够在一个表单能够修改表1的OrderSum字段,也能够修改表2中的字段yjfs和yf,而且修改表2中的yjfs和yf,必须是需要同一个OrderNum下所有商品的邮费和邮寄方式都同时修改才可以,这些我都不知道怎么写了。请高手赐教!
我发一段程序上来看看,应该怎么改,怎么才能做到。sub Order()
OrderNum=request("id")
if request.form("dianj")="ok" then
set rs=Server.Createobject("ADODB.RecordSet")
sql="select  * from biao1 where OrderNum='"&OrderNum&"'"'如果修改了biao1就无法修改biao2
'sql="select * from biao2 where OrderNum='"&OrderNum&"'"'如果修改了biao2就无法修改biao1 rs.Open sql,conn,1,3

if trim(request("ordersum"))       <>"" then rs("ordersum")         = trim(request("ordersum"))
'if trim(request("yjfs"))       <>"" then rs("yjfs")         = trim(request("yjfs"))
'if trim(request("yf"))       <>"" then rs("yf")         = trim(request("yf"))

解决方案 »

  1.   

    你问题描述有问题,表1应该是汇总表,你直接修改表1的数据,然后修改明细表的数据。那么表2中应该修改哪一条呢?或者 哪个OrderNum的数据呢?
      

  2.   

    表1是汇总表,修改了表1后,明细表没有修改也不行,而我需要的是,能够修改汇总表,也能修改明细表,打比方:我买了三款产品,汇总表显示:订单号(OrderNum)为123456,总价格(OrderSum)为:256元,明细表则是这样:订单号(OrderNum)因为有三款商品所以就有三个同样的订单号:123456,每款商品的价格(Totalprice):商品1为:100元,商品2为:46元,商品三为:100元,明细表中因为有三条同样的订单号:那么配送方式(yjfs)为三条数据:申通快递。邮费(yf)也有三条数据:10元,如果我修改了任意一个表中快递(yjfs)为包邮,那么还有两条(yjfs)数值为:申通。我现在想得到的帮助就是,能够修改表1,也能够修改表2的数值,并且如果我修改表2中的(yjfs)和(yf)时候,能够实现这个表2中(OrderNum)数值是一样的,那么都能够同时修改掉。
      

  3.   

    兄弟,我猜你的想法是这样
    1、表一的数据可以修改。
    2、表二的数据可以修改,修改的同时修改表一中的汇总数据。我这里样理解不会错吧?按我的理解说吧。你在界面操作,太不保险了。哪怕是界面操作也该发起一个事务。在SQL中你可以添加一个 触发器(不建议使用,这个是比较偷懒的方式,超大并发可能存在性能问题)Create trigger ON 表2  for update  
    as
    select * into #tmp from inserted;
    select a.OrderNum,sum(a.yf-b.yf) ce into #tmp1 from #tmp a,表2 b group by a.OrderNum;
    update a set a.OrderSum=a.OrderSum-b.ce from 表1 a,#tmp1  b where a.OrderNum=b.OrderNum;
      

  4.   

    LZ  我的问题跟你差不多的
    我是不知道怎么在table中插入数据,然后记录在数据库里面。
    UP
      

  5.   

    使用一个sp吧。
    传递进该sp的是商品信息,如id,价格等和订单号
    在sp中同时修改表示订单信息的汇总表(包括汇总的价格)以及明细表中的商品信息(包括id和价格)
      

  6.   

    update set b.yf=10,b.yjfs='申通' from biao1 a,biao2 b where a.OrderNum=b.OrderNum
    你的OrderNum是一致的你还改什么啊另外你的表用一个表就可以没必要有两个啊
    select OrderNum,SUM(Totalprice) OrderSum from biao2 where OrderNum='1234567' group by OrderNum最好是重新设计数据库结构
    订单编号、邮寄方式、运费一个表
    用户信息一个表
    购物篮一个表