posts - 247,  comments - 25,  trackbacks - 0
create   procedure   File2Table  
  @servername   varchar(200) --服务器名  
  ,@username   varchar(200) --用户名,如果用NT验证方式,则为空''  
  ,@password   varchar(200) --密码  
  ,@filename   varchar(1000) --目录名+文件名  
  ,@tbname   varchar(500)='' --数据库..表名  
  ,@isout   bit=1 --1为导出(默认),0为导入  
  ,@fdsplit   varchar(10)='\t' --字段分隔符,默认为制表符  
  ,@rowsplit   varchar(10)='\n' --记录分隔符,默认为回车符  
  as  
  declare   @sql   varchar(8000)  
   
  set   @sql='bcp   "'+@tbname  
  +case   when   @isout=1   then   '"   out'   else   '"   in'   end  
  +'   "'+@filename+'"   /c' +'   /S"'+@servername  
  +case   when   isnull(@username,'')=''   then   ''    
  else   '"   /U"'+@username   end  
  +'"   /P"'+isnull(@password,'')+'"'  
  +'   /t"'+@fdsplit+'"'  
  +'   /r"'+@rowsplit+'"'  
   
  exec   master..xp_cmdshell   @sql  
  go  


调用:
exec   file2table   '127.0.0.1','sa','sa','c:\zj.txt','epee_db.dbo.branch_arch'
posted on 2008-08-14 17:29 林的 阅读(852) 评论(1)  编辑  收藏 所属分类: util

FeedBack:
# re: sqlserver备份数据库表为.txt文本存储过程 (感谢同事)
2012-07-24 14:47 | xxg
请问个问题好么?如果数据库装在SUSELinux下,也需要用xp_cmdshell 么?  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 
<2008年8月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

想回家了,呵呵!

常用链接

留言簿(6)

随笔分类

随笔档案

文章分类

文章档案

相册

收藏夹

搜索

  •  

最新评论

阅读排行榜

评论排行榜