1

私は毎日いくつかのテーブルをフラット ファイルにエクスポートするスクリプトを書いています。BCP ユーティリティを調べていますが、本当に必要な機能が含まれているかどうかわかりません。

  1. たとえば、フィールドを順不同で出力する必要があります。つまり、MSSQL データベースの 15 番目のフィールドは、フラット ファイルの 2 番目のフィールドである必要があります。

  2. さらに重要なことは、一部のフィールドを変更する必要があることです。たとえば、特定のフィールドが null であるか、特別な値が含まれている場合、それらをコードに置き換える必要があります。

BCP はこれに適したツールですか? 私の直感は、代わりに Perl でこれを行うように指示します。

4

2 に答える 2

1

ストアド プロシージャを作成し、そこですべてのデータ変換を行うことができます。次に、このストアド プロシージャをbcpにフィードします。

Perlよりも確実に高速です。

SSIS も高速です。変換が非常に複雑な場合のオプションになる可能性があります。

于 2013-04-08T14:51:34.927 に答える
1

クエリを使用して、列を BCP で直接並べ替えたり書式設定したりできます

bcp ユーティリティ

"query"
結果セットを返す Transact-SQL クエリです。

例:

bcp "SELECT Name FROM AdventureWorks.Sales.Currency" queryout Currency.Name.dat -T -c
于 2013-04-08T15:17:06.920 に答える