如何使用tsql将表输出到txt文件?

时间:2010-02-08 23:13:53

标签: sql-server tsql

如何使用tsql将表输出到txt文件?我不想在这种情况下使用DTS或SSIS。

4 个答案:

答案 0 :(得分:5)

您还可以按 CTRL + SHIFT + F SQL Server Management Studio输出重定向到文件。

答案 1 :(得分:4)

BCP

bcp MyDb.MySchema.Mytable out myTable.dat -T -c
    如果使用sql查询,
  • out 可以替换为 queryout ,如果加载数据,则
  • -T windows authentication,替换为-u和-p for sql auth
  • -c输出为文本而不是二进制
  • -r是行终止符选项
  • -t os tje field terminator option
  • -S指定非默认服务器

关于导出的所有真正有用的选项,我认为。

答案 2 :(得分:3)

以下是Google搜索中最常见的答案:

EXEC master..xp_cmdshell'bcp "SELECT TOP 5 CUSTOMERID FROM Northwind.dbo.Customers" queryout "c:\text.txt" -c -T -x'

答案 3 :(得分:2)

我一直使用SQLCMD模式执行此操作。这是一个例子:

-----------------------------
--Generate State seeds
-----------------------------

-- This is the path and file where you want the scripts to land.
:setvar OutDir "C:\Dev\Sandbox\GenTest\Scripts\"
:setvar OutFile "dbo.State.seed.sql" 

SET NOCOUNT ON;
GO

:out $(OutDir)$(OutFile)

SELECT 
    'INSERT [State] ([StateId], [StateCd], [Description]) VALUES ('
    + CAST( [StateId] AS VARCHAR(2))
    + ', ''' + [StateCd] + ''''
    + ', ''' + [Description] + ''''
    + ');'
FROM [State];

GO  --this 'GO' is vital for this to work correctly.

:out stdout

- 格雷姆