那怎么把B表中的REC值传给A表呢?

解决方案 »

  1.   

    建立一个唯一索引。或者使用Trans
      

  2.   

    我想用trans但是不知道怎么用.NET 来写,能不能给我个范例。
      

  3.   

    SqlConnection myConnection = new SqlConnection("Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;");
    myConnection.Open();SqlTransaction myTrans = myConnection.BeginTransaction();
    myTrans.IsolationLevel = IsolationLevel.ReadCommitted;SqlCommand myCommand = myConnection.CreateCommand();
    myCommand.Transaction = myTrans;myCommand.CommandText = "insert into B (f1,rec) values ('xxx'," & re & ")"
    myCommand.ExecuteNonQuery();
    myCommand.CommandText = "insert into A (f1,rec) values ('yyy'," & re & ")"
    myCommand.ExecuteNonQuery();
    myTrans.Commit();
      

  4.   

    谢谢dicman(小兵(闭关修炼中)) 
    海有个问题!你这段代码怎么保证B表中rec的唯一性呢?
      

  5.   

    你可以在数据库定义中对rec建立一个唯一索引
      

  6.   

    使用guid:http://blog.joycode.com/moslem/
      

  7.   

    你怎么不能把B中的rec传给A呢?rec是怎样得到的你不知道吗?
      

  8.   

    to:dicman(小兵(闭关修炼中)) 可以用触发器,也可以用存储过程,给表加锁。实际上你这样的算法还不如用自动增加的字段,虽然不推荐用自动增加字段。请dicman(小兵(闭关修炼中))讲讲为什么不推荐用自动增加字段??????
      

  9.   

    真不好意思,不知道REC是怎么得到的。你能讲讲吗?
      

  10.   

    基本同意楼上的解答,同时如果你想得到你新加入记录的自动增加字段时并不是很容易!
    cuc3com(蓝狼)
    你的rec字段在数据库中是怎样定义的?在程序里代表什么含义?
      

  11.   

    rec 是提供A表和B表相互联系的。B和A是一对多关系。就象在我们设计库存管理系统时,建立入库单表时,会同时建立2个表,一个表储存入库单编号,进货单位等入库单中唯一的信息,而另一个表储存 入库单号,入库材料,数量,金额等多条记录。两表通过入库单建立连接关系。我的rec字段可以理解成入库单号码。
      

  12.   

    to:athossmth(athos) 
    你提供的连接不能打开啊
      

  13.   

    我再把问题说一遍吧,B表中的REC字段不是自动增加的,它是通过
    comm.commandtext="select max(rec) from B"
    re=cint(comm.ExecuteScalar())+1
    而得到的。
    现在的难点是,如果有2人同时操作,就会得出同样的结果。请各位老大帮忙,
    怎么解决,小弟先谢谢了。
      

  14.   

    erist(情升网络) 你能具体讲一下吗?
      

  15.   

    我也想得到全一点的C#代码,就是 在多人操作的时候要避免ID的重复
      

  16.   

    使用自增字段 有问题吗?
    用guid()生成一个唯一变量也可以