同时插入两个表,这样写insert语句对吗?
insert into table1,table2 table1.values(@fname1,@fname2) and table2.values(@fname3,@fname4)
表1:table1
ID(自动增长):CHNID
列1:fname1
列2:fname2
表2:table2
ID(和表1的ID一一对应):CHNID
列1:fname3
列2:fname4
(实际就是把一个大表,拆分成两个小表,两个表的ID是对应的,现在要同时写这两个表)
上面的insert语句对吗,如果不对,正确的该怎么写?
------解决方案--------------------不能这样插入
得分开写
你这种情况写个触发器好了
------解决方案--------------------string strSql= "insert into table1 values(@fname1,@fname2);insert into table2 values(@fname3,@fname4); ";
------解决方案--------------------语法是肯定错误的
同楼上写两个SQL语句,还应该考虑事务的问题
------解决方案--------------------采用事物的写法吧。
你可以看看SqlTransaction(System.Data.SqlClient里)
insert into table1 values(@fname1,@fname2) @@IDENTITY AS 'id ';
insert into table2 values(@Id,@fname3,@fname4);
------解决方案--------------------就单独些两点SQL 就可以