一个页面的数据如下:
标题
代号
价格参数1
参数2
参数3同时提交,需要把标题、代码、价格插入产品表,形成1条记录;后面的参数1 参数2 参数3插入另一个参数表,形成3条数据,参数表通过一个产品ID与产品表进行关联,如何在插入产品表后获得刚插入记录的ID,再剩下的数据一起插入到参数表。另外就是,如何同时向一个表插入多条数据。

解决方案 »

  1.   

    "insert into tabel(列) values(值1);insert into tabel(列) values(值2);insert into tabel(列) values(值3);"
      

  2.   

    select top 1 id from table
      

  3.   

    应该是6个字段用1张表吧。给你一个场景
    需要进行一种产品的交易,其中卖家使用的表格是:
    产品名称
    产品ID(SQL 唯一ID)
    价格
    参数1/2/3....
    ...而消费者使用的表格应该是另一张表:
    消费清单号 (SQL 唯一ID)
    产品ID
    参数1/2/3(如果价格与参数相关才使用,平时为 null)
    数量
    实际成交价格/状态等
    其它交易信息,如交货时间/地点/付款状态等另外还有交易成员(分为企业和个人)两张表其中消费表|产品ID与产品表格关联。这样就可以省很多存储空间。
    你的问题有个不足之处,就是表格分割得太细,参数和第一个表是一一对应的就没有必要分成两张表。如果要跨页面进行存储,就需要使用全局数据或全局结构了,对于编程来说不太好。
      

  4.   


    这个存在一张表不行,因为后面的参数是不固定的,比如某一个产品有20个参数,另外可能有30个,所以参数必须存在另一张表,通过产品ID关联。我想实在不行就只有在NET里面用循环的方式一条条插入。另外就是获取刚插入的产品ID,如果多个人同时插入,这个不知道会不会混乱。
      

  5.   

    select top 1 不能获得刚刚插入的记录吗?
      

  6.   

    执行事务调用存储过程
    insert 
    select @@identity
    再insert