有没有办法用代码实现dts导入/导出向导所能完成的任务

luoyinghua 2004-06-23 06:50:32
可以利用DTS导入/导出向导可以把文本文件中的数据导入到数据库中,请问能够用程序代码实现吗?如何实现?给一点提示就可以了,不需要完整的程序
...全文
166 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
蝈蝈太阳 2004-07-23
  • 打赏
  • 举报
回复
够熟的,
不过,反对在此挣钱!
zeng1980 2004-07-02
  • 打赏
  • 举报
回复
我有一个很好的数据库集成中间件,能够实现相同或者不同数据库之间同步传输和转化,可以从XML,文本文件,普通文件到数据库之间的转化,同时能够做到实时的传输,如果有需要的话可以联系MSN:zeng20004@hotmail.com
e-mail:zengtiehuan@126.com,注意:这个不是免费的
zjcxc 2004-06-23
  • 打赏
  • 举报
回复
--上述方法利用bcp(对应的还可以是bulk insert),具体的语法参考SQL联机丛书

--下面是用openrowset

insert into 表
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Text;HDR=NO;DATABASE=C:\' --c:\是目录
,aa#txt) --aa#txt是文本文件名aa.txt
zjcxc 2004-06-23
  • 打赏
  • 举报
回复
if exists(select 1 from sysobjects where name='File2Table' and objectproperty(id,'IsProcedure')=1)
drop procedure File2Table
go

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

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

--邹建 2003.07--*/

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

导入调用示例
--导入指定表,这里指定导入表:地区资料
exec file2table 'zj','','','c:\zj.txt','xzkh_sa..地区资料',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

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧