0

SQL Server データベース (特定の接続文字列を使用) からローカル ファイル (任意の形式) にデータを一括エクスポートしようとするアプリケーションを作成しています。

通常、SQL サーバー ユーティリティのBCP.exeが理想的ですが、アプリを実行しているマシンでbcpユーティリティを使用できない場合があります。また、bcp は再配布可能なアプリとは見なされません。

私の質問: BCP.exe が再配布可能でないというのは本当ですか? そうでない場合、私と私のアプリで利用できる最適な再配布可能なモジュールは何ですか?

どんな解決策も検討されます。

4

3 に答える 3

0

BCPを検討している具体的な理由はありますか? 非常に大量のバルク データをエクスポートしていますか? BCP は非常に高速ですが、「隠れて」機能する傾向があり、通常のチェック アンド バランスの周りで機能します。私の知る限り、これは SQL ワークステーション ツール (SSMS などでインストール) であり、通常はクライアント マシンからは使用されません。

「プル」ベースのエクスポートを開発しているようです。別のオプションとして、SQL Server Integration Services から各ターゲット コンピューターにデータをプッシュする (または、必要なデータを公開し、クライアントがそれをサブスクライブできるようにする) ことができます。

それ以外の場合は、ADO を使用してデータを取得し、ファイルに書き出す .Net (またはその他の) ベースのアプリケーションを作成できます。自由に使用できるオプションがいくつかあります。あなたが働いている環境について詳しく教えてください。

于 2009-04-22T00:14:39.883 に答える
0

いいえ、プル ベースのエクスポートが必要です。大量のデータ用です。ADO は bcp よりも遅いです。それ以外の場合は検討します。SSIS または bcp の速度を持つバルク データ転送機能が必要です。

そうです、bcp は SQL ワークステーション ツールであり、私のジレンマであるクライアント マシンから使用されることはありません。

Jeremy、C# アプリケーションは問題ありません。

于 2009-04-22T12:40:20.450 に答える
0

VB.Net または C# を使用している場合、フレームワーク以外の再配布可能なコンポーネントは必要ありません。

編集:アプリケーションの対象となるシステムと、それを作成するために使用する予定のプログラミング言語を知りたい. 適切な対応ができますように。

再編集: SQL OPENROWSETメソッドを試してみると、任意の OLEDB プロバイダーに直接挿入できるようになります。それ以外は、このために ADO に行き詰まるでしょう。

于 2009-04-21T22:00:32.437 に答える