問題タブ [sqlbulkcopy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
enterprise-library - SqlBulkCopy を MS Enterprise Library で動作させるにはどうすればよいですか?
SqlBulkCopy を使用するコードがいくつかあります。そして現在、コードをリファクタリングして、標準のデータベース関数の代わりに Enterprise Library データベース関数を使用しています。問題は、SqlBulkCopy をインスタンス化する方法です。それは SqlConnection を受け入れ、私は DbConnection しか持っていません。
memory - sqlbulkcopy メモリ。管理
SQLBULKCOPY を使用していくつかのデータ テーブルをデータベース テーブルにコピーしていますが、コピーするファイルのサイズが 600 MB を超える場合があるため、メモリが不足し続けます。
データベースにコミットする前に、テーブル サイズの管理についてアドバイスを得たいと思っています。そうすれば、メモリを解放して書き込みを続けることができます。
これが私のコードの例です(簡単にするために一部の列と行を削除しました)
SQLBulkCopy を機能させるには引き続き問題があり、データベースに入力する前に各レコードに対してさらに作業を行う必要があることに気付きました。そのため、レコードごとに更新を行う単純な LinQ to Sql メソッドを開発し、編集できるようにしました。他の情報を取得し、実行中のレコード情報をさらに作成します。
問題: このメソッドの実行速度は非常に遅く (Core i3 マシンでも)、高速化する方法 (スレッド化?) に関するアイデアはありません。シングル プロセッサ コアでは、1GB のメモリでクラッシュするか、場合によっては 6 ~ 8 時間かかります。数分かかる 1 つの SQLBulkCopy と同じ量のデータを書き込みます。ただし、メモリをより適切に管理します。
ヘルパーメソッドを使用:
sql - このストアドプロシージャの問題を修正する方法
私は2つのテーブルを持っています。以下は、これらのテーブルの簡略版です。
これで、これらのテーブルは相互に関係があります。
シナリオ
ユーザー1が私のサイトにアクセスし、いくつかのアクションを実行します(この場合、テーブルAに行を追加します)。したがって、表AのすべてのデータをSqlBulkCopyを使用します。
ただし、テーブルBにもデータを追加する必要がありますが、SQLBulkCopyがこれらを返さないため、テーブルAから新しく作成されたIDがわかりません。
そのため、表Bに存在しないすべてのIDを検索し、それらをに挿入するストアドプロシージャを作成することを考えています。
ただし、これには問題があります。ユーザーはいつでもTableBから何かを削除できるため、ユーザーがたとえば行を削除してから別のユーザーが来たり、同じユーザーが来てテーブルAに何かをしたりすると、ストアドプロシージャはテーブルBの削除された行を戻します。これは、テーブルAにはまだ存在しますが、テーブルBには存在しないため、ストアドプロシージャの条件を満たすためです。
では、一括挿入を使用するときに更新する必要がある2つのテーブルを処理するためのより良い方法はありますか?
sql-server-2008 - XSD: テーブル y の列 x の型が小さすぎてデータを保持できません
XML の列に基づいて XSD ファイルを生成しています。私はそれらすべてに「xs:string」というタイプを与えます。次に、SQLbulk インポートで .NET を使用してファイルをデータベースにインポートしようとしましたが、一部のフィールドでは小さすぎます。「テーブル y の列 x の型が小さすぎてデータを保持できません」というメッセージが表示されます。
大量のテキスト (sqlbulk.execute を使用してデータベースにテキスト フィールドを生成するには) にはどの型を使用すればよいですか? 現在のものは nvarchar(1000) フィールドを作成し、いくつかのフィールドのデータはより大きくなっています
c# - SqlBulkCopyの一部の列をスキップする
SqlBulkCopy
異なる列のセットを持つ2つのSQLServer2008に対して使用しています(一部のデータをprod
サーバーからに移動しますdev
)。したがって、まだ存在していない/まだ削除されていない列をスキップしたい。
どうやってやるの?いくつかのトリックColumnMappings
?
編集:
次に行います:
そして取得:
指定されたColumnMappingは、ソースまたは宛先のどの列とも一致しません。
sql - SQLバルクコピーを使用して同じサーバー内のデータをコピーできますか?
SQLバルクコピーを使用して同じサーバー内のデータをコピーできますか?
c# - SQL(エクスポート)テーブルを.Netのcsvまたはtsvファイルに一括コピーする方法は?
SQLデータベースデータをプレーンテキストファイル(つまり、csv \ tsv)にエクスポートする方法を提供する.Netライブラリはありますか?SqlBulkCopyは、ソリューションのインポート部分にのみ適用され、Process.Start呼び出しを呼び出して、bcp.exeを呼び出すコマンドプロンプトを開くことは好みません。
sql - SqlBulkCopy が、XML 列に大きなコンテンツを含む行をコピーしようとすると失敗する
ある SQL Server テーブルから別のテーブルにレコードをコピーしようとしています。両方のテーブルの構造は同じで、列の 1 つは xml 型です。ソース テーブルの行には、約 2.5Mb の大きな xml コンテンツがあります。
xml 列の内容をファイルに保存しました。添付の map.zip を参照するか、https://docs.google.com/leaf?id=0Bz4PXXEQL5TpM2U5MWJhM2MtMTI0Yi00ODg0LTk4OWItMzJiNjVjMDIzNjc2&hl=en&authkey=CLT5i8oP からダウンロードして ください。
私のコードの簡略版:
bulkCopy.WriteToServer で発生する例外:
SqlBulkCopy のバグのようです。他の誰かがそれを再現して確認できるのだろうか。
更新: マイクロソフトに提出し、
_https://connect.microsoft.com/VisualStudio/feedback/details/614046/sqlbulkcopy-fails-trying-to-copy-a-row-with-large-content-in-an-xml-column
彼らはこれが彼らのバグであることを確認しました:
これまでのデバッグから、一括コピー パスでの XML のサーバー側処理に問題があるように見えます。XML ファイル内の属性の 1 つが非常に大きく、割り当てサイズの制限により、XML の処理時に SQL Server が失敗する原因となっています。
sqlbulkcopy - SqlBulkCopy は Sql 選択からテーブルを作成できますか
SqlBulkCopy は、SELECT INTO のようなテーブルを作成できますか?
database - バルクコピー-sybase
あるテーブルから別のテーブルに約2,000万行を選択的に(行と列の両方で)エクスポートする必要があります。これは私が試したものです:
完了するまでに約12時間かかります。sybaseでは、Table1から選択した列と行を使用してbcpを出力し、Table2にbcpを入力することはできないと思います。使用できる代替の高速アプローチはありますか?4時間以内にできれば幸いです。
読んでくれてありがとう。