ALTER proc sp_testCursor
as
declare @one nvarchar(500),
@two nvarchar(500),
@three nvarchar(500)
declare cur cursor for
select Aone,Atwo,b.Bthree
from dbo.Table_A a
join dbo.Table_B b on a.id = b.Aid;
open cur
fetch next from cur into @one,@two,@three --先去第一条数据
while @one is not null and @two is not NULL and @three is not null and @@fetch_status=0 --结束的条件
begin
insert INTO dbo.Table_C
( Tone, Ttwo, Tthree )
VALUES ( @one, -- Tone - nvarchar(50)
@two, -- Ttwo - nvarchar(50)
@three -- Tthree - nvarchar(50)
)
fetch next from cur into @one,@two,@three --取下一条数据,相当于C#中的i++
end
close cur --关闭游标
deallocate cur
go
as
declare @one nvarchar(500),
@two nvarchar(500),
@three nvarchar(500)
declare cur cursor for
select Aone,Atwo,b.Bthree
from dbo.Table_A a
join dbo.Table_B b on a.id = b.Aid;
open cur
fetch next from cur into @one,@two,@three --先去第一条数据
while @one is not null and @two is not NULL and @three is not null and @@fetch_status=0 --结束的条件
begin
insert INTO dbo.Table_C
( Tone, Ttwo, Tthree )
VALUES ( @one, -- Tone - nvarchar(50)
@two, -- Ttwo - nvarchar(50)
@three -- Tthree - nvarchar(50)
)
fetch next from cur into @one,@two,@three --取下一条数据,相当于C#中的i++
end
close cur --关闭游标
deallocate cur
go