如何在两个表中插入数据

时间:2011-06-27 17:41:51

标签: asp.net sql database

  

可能重复:
  how to insert data using multiple tables

我做了什么是创建两个表

  1. 表1 - RollNo,Fname,Mname,Lname
  2. 表2 - Rollno,Marks
  3. 现在我将外键设置为RollNo

    现在点是: -

    我在默认模式下使用ASP.NET中的DetailsView作为Insert

    在数据源配置中我已将SELECT的查询编写为两个表的INNER JOIN 这很完美。

    问题是INSERT QUERY.It不允许我将值插入两个表

    从上面可以看出,对于我的INSERT操作,Fname,Mname,Lname来自Table1,而Marks是Table2.And Rollno是外键。所以我该怎么做

    插入两个TABLES.FROM单个用户表单

    请记住我在Asp.NET中使用DetailsView,它允许我一次只选择一个SQLDataSource。

3 个答案:

答案 0 :(得分:1)

插入是按设计单表操作。如果要插入两个相关表,则需要先插入主表,检索刚刚创建的密钥,然后使用刚检索到的密钥插入第二个表。

答案 1 :(得分:0)

您可以使用存储过程和Transactions来执行两个插入语句。但是你不能同时在两个表上执行插入。

答案 2 :(得分:-1)

你不能一次插入两个表,首先必须插入主键,而不是来到外键表..你可以使用@@ IDENTITY,这将为你提供主键值,你可以使用它插入第二个表

使用这种方式

  Insert into Table1(FName, MName, LName)
  values(@val1 , @val2, @val3)

  Insert into Table2(RollNo, Marks)
   values(@@Identity, val4)