1

SQL Server 2008 にリモートで接続するアプリを作成しました。SQL 接続が機能し、従来のすべての oCommand.ExecuteNonQuery() がうまく機能します。

しかし、私の SMO クラスは server.ConnectionContext.ExecuteNonQuery(scriptfile); を使用しています。エラー: バッチ parsing.dll がありません。

これらの独立したユーティリティをクライアント マシンにインストールすることはできず、完了したらすべてを削除します。 428a-923f-58a033d316e1

私の一括挿入は完全なテーブルを含む大規模なメモリ ホグであるため、テーブルを temptable.sql ファイルに書き込み、SQLCMD Util を使用し、後で SMO を切り替えると、同じ問題が発生します。これらのいずれも、クライアントの PC で利用することはできません。なにか提案を?ありがとう :-)

4

1 に答える 1

0

さて、2つのこと:

  • アプリで SMO を使用する場合は、SMO コンポーネントがクライアント コンピューターにインストールされていることを確認する必要があります。Microsoft から SMO バイナリを取得し、アプリと共に配布してインストールすることができますが、それがクライアントのコンピューターに合法的に取得する唯一の方法です。

  • それができない場合は、SqlBulkCopyクラスを調べてみてはどうでしょうか。これは、大量のデータを一括挿入するために特別に設計されたもので、ADO.NET 2.0 の一部であり、追加のインストールは必要ありません。MSDN ライブラリには、SQL Server の一括操作に関するセクション全体があります。チェックしてください。

于 2010-03-02T06:11:44.010 に答える