各位朋友,进来看看,怎样提高执行效率! 50fanyixiao]

发布时间:2017-5-29 2:29:36 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"各位朋友,进来看看,怎样提高执行效率! 50fanyixiao]",主要涉及到各位朋友,进来看看,怎样提高执行效率! 50fanyixiao]方面的内容,对于各位朋友,进来看看,怎样提高执行效率! 50fanyixiao]感兴趣的同学可以参考一下。

DECLARE cursor_jingjia  CURSOR FOR select type1,content from [89-95] where content is null and type1 like '%【申请号】%' open cursor_jingjia declare   @type1 nvarchar(50),  @content nvarchar(1500) [email protected] int --select @k=1  fetch  cursor_jingjia  into  @type1,@content   while  (@@fetch_status=0)  begin              declare limian cursor for                                         select type1 as type1_0 from [89-95_01]                          declare                         @type1_0 nvarchar(1500)                         open limian                         fetch limian into @type1_0                         while (@@fetch_status=0)                          begin                              if(@[email protected])                              begin   fetch limian into @type1_0                                         fetch limian into @type1_0                                         update [89-95] set [email protected]_0 ,type1=replace(@type1,'【申请号】 ','') where [email protected]                             end                                                         fetch limian into @type1_0                          end                         close limian                         deallocate limian                                 fetch  cursor_jingjia  into  @type1,@content  end         close  cursor_jingjia   DEALLOCATE  cursor_jingjia ----------------------上面是我写的存储过程,他的作用是这样的例如: 这个表是用txt导到sql中的,结果所有内容被写到了一个type1字段中如下: 字段名:type1 行--【申请号】 85100001  //中间是空格所以上面存储过程中去空格了 行--【权利要求】 行--一种在标准的或变形的付立叶光学系统中实时显示假彩色的方法。//这是要的内容在新的表中是content字段 行--【光盘卷号】 ----------------------------------- 导成的表是两个字段 type                    content 85100001              一种在标准的或变形的付立叶光学系统中实时显示假彩色的方法 ---------------------------------------- 请问各位高手,怎样能提高执行效率,现在的效率是4天导了2万条数据,太慢了!

用快速只读游标试试: DECLARE cursor_jingj CURSOR FAST_FORWARD FOR select type1,content from [89-95] where content is null and type1 like '%【申请号】%'

游标里又嵌套了游标,汗!贴出你的表结构及测试数据还有要实现的效果再看看。

其实你先把txt导到access 这时每条都会有一个id,在用这个存储过程 DECLARE cursor_jingjia  CURSOR  FOR select id as id1,content,flag from [89-95]  open cursor_jingjia declare   @id1 int,  @flag int,  @content nvarchar(2500),  @content_number nvarchar(50)  fetch  cursor_jingjia  into  @id1,@content,@flag   while  (@@fetch_status=0)  begin              if (@content like '%【申请号】%' and @flag is  null)                  begin                   select @[email protected]                   update [85] set flag=1 where [email protected]                                                fetch  cursor_jingjia  into  @id1,@content,@flag                  fetch  cursor_jingjia  into  @id1,@content,@flag                 insert into [89-95_01](type1,content) values (replace(@content_number,'【申请号】 ',''),@content)         end   fetch  cursor_jingjia  into  @id1,@content,@flag   end         close  cursor_jingjia   DEALLOCATE  cursor_jingjia

上一篇:写在SQL Server 2005正式发布之前 100superhasty]
下一篇:SQLServer2005中的XML类型的变量作为存储过程的参数问题 0CSDN]

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。