在SQL Server 2008中导出表

cMi*_*nor 9 sql-server-2008

  • 如何将表SQL Server导出到单个平面文件?(所有数据和第一行作为列名)??
  • 有没有这样做的查询?

pco*_*fre 13

  1. 右键单击数据库名称 - >任务 - > ExportData
  2. 选择表作为数据源
  3. 选择平面文件目标作为目标
  4. 选择一个FileName
  5. 标记"第一个数据行中的列名称"

  • 您是否考虑过使用SSIS?否则,可以通过写SP(如http://www.dotnetspider.com/forum/253768-Queryout-with-Column-Names.aspx中所述)然后使用`EXEC xp_cmdshell'bcp“ exec [ [storedProcedure]“ queryout” C:\ file.txt“ -T -c -t,'`提取到文件 (2认同)

Mal*_*alk 7

DECLARE  
     @saveas VARCHAR(2048)
    ,@query VARCHAR(2048)
    ,@bcpquery VARCHAR(2048)
    ,@bcpconn VARCHAR(64)
    ,@bcpdelim VARCHAR(2)

SET @query      = 'select * from table1'
SET @saveas     = '\\SERVER1\SHARE1\FOLDER\QueryOutput.txt'
SET @bcpdelim   = '|'
SET @bcpconn    = '-T' -- Trusted
--SET @bcpconn    = '-U <username> -P <password>' -- SQL authentication


SET @bcpquery = 'bcp "' + replace(@query, char(10), '') + '" QUERYOUT "' + @saveas + '" -c -t^' + @bcpdelim + ' ' + @bcpconn + ' -S ' + @@servername
EXEC master..xp_cmdshell @bcpquery  
Run Code Online (Sandbox Code Playgroud)