http://expert.csdn.net/Expert/topic/2341/2341997.xml?temp=.2739221
SQL语句导入导出大全

解决方案 »

  1.   

    EXEC master..xp_cmdshell 'bcp "Select B字段 from 数据库名..A表" queryout c:\DT.txt -c -Sservername -Usa -Ppassword'
      

  2.   

    EXEC master..xp_cmdshell 'bcp "你地数据库名..表名" in 路径 -c -Sservername -U用户名 -P密码'
    --0--把上面的中文部分替换成你的情况就ok了
      

  3.   

    /*--实现数据导入/导出的存储过程 可以实现导入/导出 指定表 到文本文件邹建 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 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
      

  4.   

    --查询分析器,执行下面的语句:exec master..xp_cmdshell 'bcp "select B from 你的数据库名..A表" queryout "c:\a.txt" /P"" /c'
      

  5.   

    谢谢各位。
    我想说一下。
    TO :  txlicenhe(马可) 
    xp_cmdshell 只有SA账号才能用到。
    现在我不是SA账号因为为了安全性不能用到SA账号所以看来不行。TO :zjcxc(邹建) (file2table 这个是什么储蓄过程?
    在SQL2K中找不到。
    也找不到相关的帮助说明!
      

  6.   

    现在我不是SA账号因为为了安全性不能用到SA账号所以看来不行。---------  
    那没办法。file2table 这个是什么储蓄过程?---------
    楼主没仔细看,这个是自己建的存储过程,当然也是用
    master..xp_cmdshell 执行 bcp 命令。
      

  7.   

    file2table就是上面我写的通用存储过程.要将数据导出到文本文件,用SQL的话,就一定要有管理员的权限
      

  8.   

    [3]把新建的数据表存为文件: 
    select * from tablename into outfile "c:\abc.txt"; 这个是在MYSQL中可以用的。
    我搞到MSSQL中就不行了。
    有没有类似的方法各位帮帮我啦!!
    分不够再加!!
      

  9.   

    要将数据导出到文本文件,用SQL的话,就一定要有管理员的权限??
    不一定,只要MSSQLSERVER 服务的启动帐户有对该磁盘写的权限即可。
    所以不需要SA的权限,也是完全可以的。其实SA和对磁盘的文件写没有直接的关系。
    你只要有对该表的读的权限即可。你可以在DOS提示符下运行:
    bcp "Select B字段 from 数据库名..A表" queryout c:\DT.txt -c -Sservername -U user -Ppassword'
      

  10.   

    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
      

  11.   

    这个在MSSQL中可以找到的。
    我也看过。
    不过要在DOS下才行。
    我想得到的是MSSQL语句。
    哎。
    好烦人。
      

  12.   

    不是。
    写错了。
    不能在DOS下用。
    并且我没有SA权限。
    然后我想把内容存为文本文件!