Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我每天都在编写脚本来将一些表导出到平面文件。我正在查看 BCP 实用程序,但我不确定它是否具有我真正需要的功能。
例如,我需要乱序输出字段。即MSSQL数据库中的第15个字段应该是平面文件中的第2个字段,etc.c
更重要的是,一些字段需要更改。例如,如果某个字段为空或包含一些特殊值,我需要将它们替换为代码。
BCP 是解决此问题的正确工具吗?我的直觉告诉我改用 Perl 来做这件事。
您可以编写一个存储过程并在那里进行所有数据转换。然后将此存储过程提供给bcp。
它肯定会比 Perl 快。
SSIS 也很快;如果转换非常复杂,可能是一种选择。
您可以使用查询直接使用 BCP 对列进行排序和格式化
bcp 实用程序
"query" 是返回结果集的 Transact-SQL 查询。
例子:
bcp "SELECT Name FROM AdventureWorks.Sales.Currency" queryout Currency.Name.dat -T -c