已知条件:
表tab1有三个字段:tab1ID(主键,自动增加)、tab1fie1、tab1fie2。
表tab2有四个字段:tab2ID(主键,自动增加)、tab2fie1、tab2fie2、tab1ID(外键,与tab1中的tab1ID字段建立外键约束关系)。 tab1,tab2均在dataSet中。
现在往tab1中加一条记录,tab2中加二条记录....
希望tab1中的tab1ID字段的值也自动更新到tab2中的tab1ID字段中去。有什么办法?谢谢
表tab1有三个字段:tab1ID(主键,自动增加)、tab1fie1、tab1fie2。
表tab2有四个字段:tab2ID(主键,自动增加)、tab2fie1、tab2fie2、tab1ID(外键,与tab1中的tab1ID字段建立外键约束关系)。 tab1,tab2均在dataSet中。
现在往tab1中加一条记录,tab2中加二条记录....
希望tab1中的tab1ID字段的值也自动更新到tab2中的tab1ID字段中去。有什么办法?谢谢
SqlDataAdapter sda1 = new SqlDataAdapter("select * from tab1;",sqlConnection1);
SqlCommandBuilder scb1 = new SqlCommandBuilder(sda1);SqlDataAdapter sda2 = new SqlDataAdapter("select * from tab2",sqlConnection1);
SqlCommandBuilder scb2 = new SqlCommandBuilder(sda2);
DataSet ds = new DataSet();
sda1.Fill(ds,"tab1");
sda2.Fill(ds,"tab2");ForeignKeyConstraint fk = new ForeignKeyConstraint("fk1",ds.Tables["tab1"].Columns["tab1ID"],ds.Tables["tab2"].Columns["tab1ID"]);
fk.UpdateRule = Rule.Cascade;
ds.Tables["tab2"].Constraints.Add(fk);
ds.EnforceConstraints = true;DataRow row1 = ds.Tables["tab1"].NewRow();
row1["tab1fie1"] = "tab1fie1_1";
row1["tab1fie2"] = "tab1fie2_1";DataRow row2 = ds.Tables["tab2"].NewRow();
row2["tab2fie1"] = "tab2fie1_1";
row2["tab2fie2"] = "tab2fie2_1";ds.Tables[0].Rows.Add(row1);
ds.Tables[1].Rows.Add(row2);sda1.Update(ds,"tab1");
sda2.Update(ds,"tab2");刚看ADO.NET,希望得到各位高手的提示,谢谢
利用ADO.NET 的事务向主表插入 一条订单Order 返回自增列值OrderID,
向从表插入该订单明细OrderDetails(多条) 循环以上步骤,插入下一条订单事务结束插入主表的SQL
INSERT INTO Order (……) VALUE (……); Select @@identity//返回自增列值
可以参考Petshop 也可以参考 Duwamish(实现方式稍有不同)
INSERT INTO Order (……) VALUE (……); Select @@identity//返回自增列值如果这样的话,是手工写这些,听说DataSet非常强大能否设置一些ForeignKeyConstraint 之类的东西 让它自己填充呢???
:)
这几天看ADO.NET 可是泡在MSDN上的。。
http://blog.csdn.net/zhzuo/archive/2004/08/06/67037.aspx