set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[test1]
AS
BEGIN
declare  @name varchar(50),
@tel1 varchar(50),
@tel2 varchar(50),
@tel3 varchar(50),
@birth varchar(50) 
declare MyCursor1 cursor local FORWARD_ONLY STATIC READ_ONLY for select name,tel1,tel2,tel3,birth from tbl_Info2
Open MyCursor1
begin
FETCH next FROM MyCursor1 INTO @name, @tel1, @tel2, @tel3,@birth
While (@@fetch_status=0)
begin
if not exists (select   *   from   tbl_Info where ((tbl_Info.name=@name and (tbl_Info.tel1=@tel1 or tbl_Info.tel1=@tel2 or tbl_Info.tel1=@tel3 or tbl_Info.tel2=@tel3)) or (tbl_Info.birth=@birth and (tbl_Info.tel1=@tel1 or tbl_Info.tel1=@tel2 or tbl_Info.tel1=@tel3 or tbl_Info.tel2=@tel3))))
begin
insert   into tbl_Info (Tel1,tel2,tel3,name,birth ) values(@tel1,@tel2,@tel3,@name,@birth)  
end
else
begin
insert   into tbl_InfoChongfu (Tel1,tel2,tel3,name,birth ) values(@tel1,@tel2,@tel3,@name,@birth)  
end
FETCH next FROM MyCursor1 INTO @name, @tel1, @tel2, @tel3,@birth
end
end
delete from tbl_Info2
END这段存储过程主要目的就是从tbl_Info2中往tbl_Info表中插数据,满足不重复条件的进tbl_Info表,否则进tbl_InfoChongfu,
每次大概插入1W5的数据,在tbl_Info表数据量小的时候还行,可是当tbl_Info表中数据大于50W的时候就一直超时,谁能帮我解决下