我想根据数据表中的数据生成.CSV
文件。我之前已经问过这个问题,但是我找不到任何关于如何指定分隔符的例子。
例如,如果我有一个表和这样的查询,这就是我想要的输出:
MyTable的:
Id - Int Key
NickName- NvarChar
REALName - NvarChar
Number - NvarChar
Updated - bit
查询:
SELECT *
FROM MyTable
WHERE Updated = 1
输出:
我希望我的输出使用|
作为字段分隔符。因此,CSV文件中的输出将如下所示:
Id|NickName|REALName|Number|Updated
1|NickNameHere|RealNameHere|0798548558|1
2|NickNameHere2|RealNameHere2|079948558|1
等等。
答案 0 :(得分:0)
以下查询使用“|”生成CSV数据分隔符
select 'Id|NickName|REALName|Number|Updated'
union all
select
cast (Id as nvarchar) + '|'
+ NickName + '|'
+ RealNameHere + '|'
+ Number + '|'
+ cast (Updated as nvarchar)
from MyTable
WHERE Updated = 1
将输出结果保存到TextFile:
方法1 :来自SSMS
从ssms菜单:查询 - >结果 - >结果归档
方法2 :使用Powershell Invoke-SqlCmd
Invoke-SqlCmd -Query "your query" | Export-Csv "path\to\csvfile"
方法3 :使用SqlCmd命令行工具:
sqlcmd -q "your query" -o "path\to\csvfile" -S server -P password -d database