zjcxc(邹建)這樣寫道:
SQL SERVER数据库可以用下面的存储过程来实现导入/导出:
/*--实现数据导入/导出的存储过程 可以实现导入/导出 指定表 到文本文件邹建 2003.07-----------------*//*--调用示例
导出调用示例
--导出指定表,这里指定导出表:地区资料 和 基本信息,文件名前缀为:zj
exec file2table 'zj','','','c:\zj.txt','xzkh_sa..地区资料'导入调用示例
--导入指定表,这里指定导出表:地区资料 和 基本信息,文件名前缀为:zj
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
gocreate procedure File2Table
@servername varchar(200) --服务器名
,@username varchar(200) --用户名,如果用NT验证方式,则为空''
,@password varchar(200) --密码
,@filename varchar(1000) --目录名+文件名
,@tbname varchar(500)='' --数据库..表名
,@isout bit=1 --1为导出(默认),0为导入
as
declare @sql varchar(8000)set @sql='bcp "'+@tbname
+case when @isout=1 then '" out' else '" in' end
+' "'+@filename+'" /w' +' /S"'+@servername
+case when isnull(@username,'')='' then ''
else '" /U"'+@username end
+'" /P"'+isnull(@password,'')+'"'
exec master..xp_cmdshell @sql
go但是,我在查詢分析器中調用這個存儲過程File2Table 'zj','','','f:\20030403.txt','temp',0時,出現這樣的錯誤提示:
Output
1.SQLState=08001,NativeError=17
2.Error=[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server=不存在或訪問被拒絕
3.SQLState=01000,NativeError=53
4.Warning=[Microsoft]][ODBC SQL Server Driver][DBNETLIB].ConnectionOpen(Connect()).
5.Null
SQL SERVER数据库可以用下面的存储过程来实现导入/导出:
/*--实现数据导入/导出的存储过程 可以实现导入/导出 指定表 到文本文件邹建 2003.07-----------------*//*--调用示例
导出调用示例
--导出指定表,这里指定导出表:地区资料 和 基本信息,文件名前缀为:zj
exec file2table 'zj','','','c:\zj.txt','xzkh_sa..地区资料'导入调用示例
--导入指定表,这里指定导出表:地区资料 和 基本信息,文件名前缀为:zj
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
gocreate procedure File2Table
@servername varchar(200) --服务器名
,@username varchar(200) --用户名,如果用NT验证方式,则为空''
,@password varchar(200) --密码
,@filename varchar(1000) --目录名+文件名
,@tbname varchar(500)='' --数据库..表名
,@isout bit=1 --1为导出(默认),0为导入
as
declare @sql varchar(8000)set @sql='bcp "'+@tbname
+case when @isout=1 then '" out' else '" in' end
+' "'+@filename+'" /w' +' /S"'+@servername
+case when isnull(@username,'')='' then ''
else '" /U"'+@username end
+'" /P"'+isnull(@password,'')+'"'
exec master..xp_cmdshell @sql
go但是,我在查詢分析器中調用這個存儲過程File2Table 'zj','','','f:\20030403.txt','temp',0時,出現這樣的錯誤提示:
Output
1.SQLState=08001,NativeError=17
2.Error=[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server=不存在或訪問被拒絕
3.SQLState=01000,NativeError=53
4.Warning=[Microsoft]][ODBC SQL Server Driver][DBNETLIB].ConnectionOpen(Connect()).
5.Null
解决方案 »
- 分不够了再加,加到你满意为止。+100+100+(录制鼠标键盘动作并且回放)
- 程序版吉祥三宝
- 有一个函数通过form1的窗口句柄发送消息过来,如何在form1得知收到消息?
- Turbo Basic反编译问题
- 请问text输入完是什么事件呢
- 请问如何在VB中对LPT1端口进行操作
- 生日又到, 自己庆祝一下(又老一岁,有啥好庆祝的), 附上几张烟火表演的照片, 昨晚放烟火庆生................................
- 利用VBA进行分类汇总求和
- 帮我解答一个新窗口问题!(我是穷鬼我不会给分的)
- MS 发表了 VS6SP4 , 请各位注意下载!!!!!
- 谁可以告诉我在vb 里面那里有datareport埪件? 见笑啦
- 请问如何读取内存中的数据?
File2Table 'zj','','','f:\20030403.txt','temp..biao',0我表單名為:Temp,只有一個字段名:line char(40)
20030403.txt 文件內容如下:2003040200:03FD0212011 5353437460 1 1
2003040203:06FD0211057 5622173412 1 1
2003040205:54MP0105015 5615240666 0 0
2003040206:04MP0105001 5622356002 2 1
2003040206:04MP0105014 5622217342 2 1
2003040206:04MP0106042 5622243230 2 1
2003040206:04MP0112008 5615161710 2 1
2003040206:24FDD0303031 5352410574 1 1
2003040206:40FDD0205007 5353255402 1 1
2003040206:43MP0106046 5622131136 1 1
2003040206:54FD0208103 5621133754 1 1
2003040206:54FD0212289 0220366100 1 1
2003040206:54FDD0209032 5353221204 1 1
2003040206:55MP0109105 6474466354 0 0
2003040206:57FDD0206151 5353450344 1 1
2003040206:58FDD0205009 5352361142 0 0
2003040207:06MP0108045 5622404010 1 1
2003040207:10MP0301115 0220350222 0 0
2003040207:23MP0212078 0220667762 0 0
2003040207:26FDD0208007 5353235500 1 1
2003040207:28FDD0206013 5352310230 0 0每行的長度也是40位.請問是什麽原因?
請你說詳細一點好嗎?
最好是有例程.
謝謝!
EXEC master..xp_cmdshell 'bcp "dbname..tablename" in c:\DT.txt -c -Sservername -Usa -Ppassword'/** 导出文本文件
EXEC master..xp_cmdshell 'bcp "dbname..tablename" out c:\DT.txt -c -Sservername -Usa -Ppassword'