下面为您介绍的这个SQL Server存储过程,实现功能是将表内每两人之间相互通信内容区分开来,并分别写入文件,希望对您学习SQL Server存储过程方面能有所帮助。

创新互联建站是一家专注于网站建设、做网站与策划设计,白城网站建设哪家好?创新互联建站做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:白城等地区。白城做网站价格咨询:028-86922220
--主过程(查找数据,并分类写入文件)
- CREATE PROC creatFileByNameProc
 - @filepath varchar(128)
 - as
 - begin
 - declare
 - @fulFileName nvarchar(256),
 - @content nvarchar(2000),
 - @root nvarchar(64),
 - @str2 nvarchar(64),
 - @str3 nvarchar(64),
 - @target nvarchar(64),
 - @str5 nvarchar(64),
 - @str6 nvarchar(64),
 - @str7 nvarchar(64),
 - @str8 nvarchar(64)
 
--文件是否存在的判断参数
- declare @isExist int, @filename1 nvarchar(256),@filename2 nvarchar(256)
 
--文件操作参数
- declare @obj int
 - exec sp_oacreate 'Scripting.FileSystemObject',@obj out
 - Declare MyCursor Cursor Scroll
 - For Select [1],[2],[3],[4],[5],[6],[7],[8] From dbo.[1111] order by [7]
 - Open MyCursor
 - FETCH first from MyCursor into @root,@str2,@str3,@target,@str5,@str6,@str7,@str8
 - while @@fetch_status=0
 - Begin
 - set @content= @root+' '+@str2+' '+@str3+' '+@target+' '+@str5+' '+@str6+' '+@str7+' '+@str8
 - --print @content
 - set @filename1= @target+'_'+ @root+'.txt'
 - set @filename2= @root+'_'+@target+'.txt'
 - set @isExist= dbo.[FileExist]( @filepath +'\' , @filename1)
 - --- print @isExist
 - if(@isExist=1)
 - begin
 - set @fulFileName=@filepath+'\'+@filename1
 - --print @fulFileName+'---1111111'
 - exec p_movefile @fulFileName,@content,@obj
 - end
 - else
 - begin
 - set @fulFileName=@filepath+'\'+@filename2
 - --print @fulFileName+'---22222'
 - exec p_movefile @fulFileName,@content,@obj
 - end
 - FETCH next from MyCursor into @root,@str2,@str3,@target,@str5,@str6,@str7,@str8
 - END
 - CLOSE MyCursor
 - DEALLOCATE MyCursor
 - end
 
--判断文件是否存在的函数
- create function dbo.FileExist(
 - @filePath nvarchar(600),
 - @fileName nvarchar(400)
 - ) returns int
 - as
 - begin
 - declare @result int
 - declare @sql nvarchar(1000)
 - set @sql=@filePath+@fileName
 - exec master.dbo.xp_fileexist @sql,@result output
 - return @result
 - end
 
--文件不存在,创建文件,写入内容;文件存在,追加内容
- create proc p_movefile
 - @filename varchar(1000),--要操作的文本文件名
 - @text varchar(8000), --要写入的内容
 - @obj int
 - as
 - begin
 - declare @err int,@src varchar(255),@desc varchar(255)
 - exec @err=sp_oamethod @obj,'OpenTextFile',@obj out,@filename,8,1
 - if @err<>0 goto lberr
 - exec @err=sp_oamethod @obj,'WriteLine',null,@text
 - if @err<>0 goto lberr
 - exec @err=sp_oadestroy @obj
 - return
 - lberr:
 - exec sp_oageterrorinfo 0,@src out,@desc out
 - select cast(@err as varbinary(4)) as 错误号
 - ,@src as 错误源,@desc as 错误描述
 - end
 
--执行语句。(由于没有进行文件夹是否存在的处理,执行前需要指定好已存在路径)
- exec creatFileByNameProc 'E:\aa'
 
                当前标题:利用SQLServer存储过程读数据写文件
                
                网站路径:http://www.csdahua.cn/qtweb/news32/409132.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网