问题很简单给100分愿朋友们帮我解答! http://expert.csdn.net/Expert/topic/2341/2341997.xml?temp=.2739221SQL语句导入导出大全 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 EXEC master..xp_cmdshell 'bcp "Select B字段 from 数据库名..A表" queryout c:\DT.txt -c -Sservername -Usa -Ppassword' EXEC master..xp_cmdshell 'bcp "你地数据库名..表名" in 路径 -c -Sservername -U用户名 -P密码'--0--把上面的中文部分替换成你的情况就ok了 /*--实现数据导入/导出的存储过程 可以实现导入/导出 指定表 到文本文件邹建 2003.07-----------------*//*--调用示例导出调用示例--导出指定表,这里指定导出表:地区资料exec file2table 'zj','','','c:\zj.txt','xzkh_new..地区资料'导入调用示例--导入指定表,这里指定导入表:地区资料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 File2Tablegocreate procedure File2Table@servername varchar(200) --服务器名,@username varchar(200) --用户名,如果用NT验证方式,则为空'',@password varchar(200) --密码,@filename varchar(1000) --目录名+文件名,@tbname varchar(500)='' --数据库..表名,@isout bit=1 --1为导出(默认),0为导入asdeclare @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,'')+'"'exec master..xp_cmdshell @sqlgo --查询分析器,执行下面的语句:exec master..xp_cmdshell 'bcp "select B from 你的数据库名..A表" queryout "c:\a.txt" /P"" /c' 谢谢各位。我想说一下。TO : txlicenhe(马可) xp_cmdshell 只有SA账号才能用到。现在我不是SA账号因为为了安全性不能用到SA账号所以看来不行。TO :zjcxc(邹建) (file2table 这个是什么储蓄过程?在SQL2K中找不到。也找不到相关的帮助说明! 现在我不是SA账号因为为了安全性不能用到SA账号所以看来不行。--------- 那没办法。file2table 这个是什么储蓄过程?---------楼主没仔细看,这个是自己建的存储过程,当然也是用master..xp_cmdshell 执行 bcp 命令。 file2table就是上面我写的通用存储过程.要将数据导出到文本文件,用SQL的话,就一定要有管理员的权限 [3]把新建的数据表存为文件: select * from tablename into outfile "c:\abc.txt"; 这个是在MYSQL中可以用的。我搞到MSSQL中就不行了。有没有类似的方法各位帮帮我啦!!分不够再加!! 要将数据导出到文本文件,用SQL的话,就一定要有管理员的权限??不一定,只要MSSQLSERVER 服务的启动帐户有对该磁盘写的权限即可。所以不需要SA的权限,也是完全可以的。其实SA和对磁盘的文件写没有直接的关系。你只要有对该表的读的权限即可。你可以在DOS提示符下运行:bcp "Select B字段 from 数据库名..A表" queryout c:\DT.txt -c -Sservername -U user -Ppassword' create table #tt(aa varchar(100))insert into #tt select b from a exec master..xp_cmdshell 'bcp #tt out c:\text.txt /p"" /c'drop table #tt 这个在MSSQL中可以找到的。我也看过。不过要在DOS下才行。我想得到的是MSSQL语句。哎。好烦人。 不是。写错了。不能在DOS下用。并且我没有SA权限。然后我想把内容存为文本文件! 数据库的导入导出 请假一个sql语句 一个简单的题目,解决了马上送分 新人提问,求前辈指点 问个SQL子查询问题 SQL触发器中可以定义全局变量(@@)吗 求救select into的用法 一个随机数问题,在线等! 连接远程数据库报错!!! 如何得到最新插入/修改的记录 (在线等待) 如何实现这种查询 征求一个触发器的写法
--0--把上面的中文部分替换成你的情况就ok了
导出调用示例
--导出指定表,这里指定导出表:地区资料
exec file2table 'zj','','','c:\zj.txt','xzkh_new..地区资料'导入调用示例
--导入指定表,这里指定导入表:地区资料
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+'" /c' +' /S"'+@servername
+case when isnull(@username,'')='' then ''
else '" /U"'+@username end
+'" /P"'+isnull(@password,'')+'"'
exec master..xp_cmdshell @sql
go
我想说一下。
TO : txlicenhe(马可)
xp_cmdshell 只有SA账号才能用到。
现在我不是SA账号因为为了安全性不能用到SA账号所以看来不行。TO :zjcxc(邹建) (file2table 这个是什么储蓄过程?
在SQL2K中找不到。
也找不到相关的帮助说明!
那没办法。file2table 这个是什么储蓄过程?---------
楼主没仔细看,这个是自己建的存储过程,当然也是用
master..xp_cmdshell 执行 bcp 命令。
select * from tablename into outfile "c:\abc.txt"; 这个是在MYSQL中可以用的。
我搞到MSSQL中就不行了。
有没有类似的方法各位帮帮我啦!!
分不够再加!!
不一定,只要MSSQLSERVER 服务的启动帐户有对该磁盘写的权限即可。
所以不需要SA的权限,也是完全可以的。其实SA和对磁盘的文件写没有直接的关系。
你只要有对该表的读的权限即可。你可以在DOS提示符下运行:
bcp "Select B字段 from 数据库名..A表" queryout c:\DT.txt -c -Sservername -U user -Ppassword'
insert into #tt select b from a
exec master..xp_cmdshell 'bcp #tt out c:\text.txt /p"" /c'
drop table #tt
我也看过。
不过要在DOS下才行。
我想得到的是MSSQL语句。
哎。
好烦人。
写错了。
不能在DOS下用。
并且我没有SA权限。
然后我想把内容存为文本文件!