中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 数据库开发 > 数据库综合
单表导入/导出文本文件
作者:未知 时间:2004-02-12 12:12 出处:Blog 责编:chinaitpower
              摘要:暂无

/*--实现数据导入/导出的存储过程

 可以实现导入/导出 指定表 到文本文件
 支持自定义行/列分隔符

--邹建 2003.07--*/

/*--调用示例
导出调用示例
--导出指定表,这里指定导出表:地区资料
exec file2table 'zj','','','c:\zj.txt','xzkh_new..地区资料',@rowsplit=','

导入调用示例
--导入指定表,这里指定导入表:地区资料
exec file2table 'zj','','','c:\zj.txt','xzkh_sa..地区资料',0
--*/

if exists(select 1 from sysobjects where name='File2Table' and objectproperty(id,'IsProcedure')=1)
 drop procedure File2Table
go

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

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有