不好意思,我忘记了一点 declare @i int select @i=0 while @i<31 insert into b select * from deleted @i=@i+1 end 确实不好意思哈!这个不会有问题了
还不对,太慌了 declare @i int select @i=0 while @i<31 insert into b select * from deleted set @i=@i+1 end
楼上的朋友,不行呀,还是死机, 这是我的触发器原码 CREATE TRIGGER [p_cmdJhCl] ON [dbo].[DDRBCMDJH] FOR INSERT AS begin declare @DDRQ as varchar(20)declare @KBH as char declare @KMC as varchar(30) declare @QDMC as varchar(30) declare @number as integer set @number=0select @DDRQ=Convert (varchar(10),CXCYear) + Convert(varchar(10),CXCMonth),@KBH=KBH,@KMC=KMC,@QDMC=QDMC from insertedwhile @number<31 insert into DDRBCMDCL (DDRQ,DWMC,QDMC) values (@DDRQ,@KMC,@QDMC) set @number=@number+1 end
这个是我测试通过的 CREATE TRIGGER [Tr_n] ON [dbo].[employees] FOR delete AS declare @i int select @i=0 while @i<31 begin insert into employees1 select * from deleted select @i=@i+1 end
while @number<31 begin insert into DDRBCMDCL (DDRQ,DWMC,QDMC) values (@DDRQ,@KMC,@QDMC) set @number=@number+1 end
CREATE TABLE [aa] ( [id] [int] NULL , [num] [int] NULL ) ON [PRIMARY] GOCREATE TABLE [bb] ( [id] [int] NULL , [total] [int] NULL ) ON [PRIMARY] GO create trigger bq on aa for insert as declare @id int,@num int,@i int select @i=0 while @i<31 begin insert into bb select * from inserted set @i=@i+1 end 你这个问题不用游标吧,只要用个循环就可以了
declare @i int
select @i=0
while @i<31
insert into b select * from deleted
@i=@i+1
end
确实不好意思哈!这个不会有问题了
declare @i int
select @i=0
while @i<31
insert into b select * from deleted
set @i=@i+1
end
这是我的触发器原码
CREATE TRIGGER [p_cmdJhCl] ON [dbo].[DDRBCMDJH]
FOR INSERT
AS
begin
declare @DDRQ as varchar(20)declare @KBH as char
declare @KMC as varchar(30)
declare @QDMC as varchar(30)
declare @number as integer
set @number=0select @DDRQ=Convert (varchar(10),CXCYear) + Convert(varchar(10),CXCMonth),@KBH=KBH,@KMC=KMC,@QDMC=QDMC from insertedwhile @number<31
insert into DDRBCMDCL (DDRQ,DWMC,QDMC) values (@DDRQ,@KMC,@QDMC)
set @number=@number+1
end
CREATE TRIGGER [Tr_n] ON [dbo].[employees]
FOR delete
AS
declare @i int
select @i=0
while @i<31
begin
insert into employees1 select * from deleted
select @i=@i+1
end
begin
insert into DDRBCMDCL (DDRQ,DWMC,QDMC) values (@DDRQ,@KMC,@QDMC)
set @number=@number+1
end
[id] [int] NULL ,
[num] [int] NULL
) ON [PRIMARY]
GOCREATE TABLE [bb] (
[id] [int] NULL ,
[total] [int] NULL
) ON [PRIMARY]
GO
create trigger bq
on aa for insert
as
declare @id int,@num int,@i int
select @i=0
while @i<31
begin
insert into bb select * from inserted
set @i=@i+1
end
你这个问题不用游标吧,只要用个循环就可以了