27,579
社区成员
发帖
与我相关
我的任务
分享
--有两张表,表A和表B,可以理解为:表A主表,表B附表
--向 表A 插入一条数据,取出自增长@@IDENTITY,和其他一些信息,插入 表B。
--目前需要向 表A 插入 很多数据,不要用循环,有什么好的方法?
DECLARE @MID INT,@IDENT INT
SELECT @MID=MAX(ID) FROM tbA
INSERT INTO tbA(...)
SELECT ... UNION ALL
SELECT ... UNION ALL
...
SET @IDENT=SCOPE_IDENTITY()
INSERT INTO tbB(...)
SELECT ... FROM tbA
WHERE ID BETWEEN @MID+1 AND @IDENT
--有两张表,表A和表B,可以理解为:表A主表,表B附表
--向 表A 插入一条数据,取出自增长@@IDENTITY,和其他一些信息,插入 表B。
--目前需要向 表A 插入 很多数据,不要用循环,有什么好的方法?
DECLARE @MID INT,@IDENT
SELECT @MID=MAX(ID) FROM tbA
INSERT INTO tbA(...)
SELECT ... UNION ALL
SELECT ... UNION ALL
...
SET @IDENT=SCOPE_IDENTITY()
INSERT INTO tbB(...)
SELECT ... FROM tbA
WHERE ID BETWEEN @MID+1 AND @IDENT
go
create trigger test on A
for insert
as
inert B(col1,col2,....)
select col1,col2,....from inserted
--触发器吧