問題タブ [insert]
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.
sql - CSVファイルから挿入SQLステートメントを生成します
csvファイルをFirebirdにインポートする必要があり、いくつかのツールを試して数時間過ごしましたが、どれも私のニーズに合いません。
主な問題は、 EMSデータインポートやFirebirdデータウィザードなど、私が試しているすべてのツールが、CSVファイルにテーブルに必要なすべての情報が含まれていることを想定していることです。
挿入ステートメントにカスタムSQLを記述する必要があります。たとえば、都市名のCSVファイルがありますが、データベースにはすでに別のテーブル(正規化)にすべての都市があるため、挿入に副選択を書き込む必要があります。都市を検索してそのIDを書き込むステートメント。また、GUIDを読み取るためのストアドプロシージャがあります。
私の挿入ステートメントは次のようになります。
どうすればこれにアプローチできますか?
hibernate - 分割されたpostgresqlを使用した休止状態の挿入バッチ
分割されたpostgresqlテーブルで休止状態を介してバッチ挿入するための解決策はありますか? 現在、このようなエラーが発生しています...
私はこのリンクhttp://lists.jboss.org/pipermail/hibernate-dev/2007-October/002771.htmlを見つけましたが、この問題が解決されたのか、それともどのように回避できるのか、ウェブ上のどこにも見つかりません
php - PHPを使って、テキストファイルの先頭に上書きせずにテキストを挿入する方法
私は持っている:
ただし、ファイルの先頭を上書きします。どうすれば挿入できますか?
insert - std::map の場合、コンテナーのサイズを変更する必要があり、メモリが利用できない場合、挿入はどのように動作しますか?
std::map の場合、コンテナーのサイズを変更する必要があり、メモリが利用できない場合、挿入はどのように動作しますか?
sql - SQL Server での INSERT OR UPDATE のソリューション
のテーブル構造を仮定しますMyTable(KEY, datafield1, datafield2...)
。
多くの場合、既存のレコードを更新するか、存在しない場合は新しいレコードを挿入します。
基本的に:
これを書くための最良のパフォーマンスの方法は何ですか?
sql-server-2005 - 遅いパラメータ化された挿入を高速な一括コピーに変更する方法 (メモリからでも)
コードにこのようなものがありました(.Net 2.0、MS SQL)
cmdInsert.ExecuteNonQuery ()をコメントアウトすると、このコードは 2 秒以内に実行されます。SQL 実行では 1 分 20 秒かかります。約 50 万件のレコードがあります。テーブルは前に空です。同様の機能の SSIS データ フロー タスクには、約 20 秒かかります。
- 一括挿入はオプションではありませんでした (以下を参照)。このインポート中に、私はいくつかの派手なことをしました。
- 私のテスト マシンは、2 GB RAM を搭載した Core 2 Duo です。
- タスク マネージャーを見ると、CPU が完全に使用されていませんでした。IOも十分に活用されていないようでした。
- スキーマは地獄のように単純です: プライマリ インデックスとして AutoInt を持つ 1 つのテーブルと 10 個未満の int、tiny int、および chars(10)。
ここでいくつかの回答をした後、メモリから一括コピーを実行できることがわかりました! ファイルから実行する必要があると思っていたので、一括コピーの使用を拒否していました...
これを使用すると、約20秒かかります(SSISタスクのように)
sql - 1 つのテーブルに行がない可能性がある複数のテーブルからの選択による Oracle の挿入
コードと長い ID を持つ説明を含むコード値テーブルがいくつかあります。
いくつかのコードを参照するアカウント タイプのエントリを作成したいので、次のようなものがあります。
これにより、それぞれのコードに一致するものが見つかった場合、tax_status および recipient テーブルから適切な値が取得されます。残念ながら、recipient_code は null 可能であるため、? 置換値は null の可能性があります。もちろん、暗黙的な結合は行を返さないため、行はテーブルに挿入されません。
でNVLを使用してみましたか?およびr.recipient_idで。
r.recipient_code = ? で外部結合を強制しようとしました。(+) を追加しますが、これは明示的な結合ではないため、Oracle はまだ別の行を追加しませんでした。
これを行う方法を知っている人はいますか?
外部で recipient_id のルックアップを行い、? r.recipient_id の代わりに、受信者テーブルから選択しないでください。ただし、これらすべてを 1 つの SQL ステートメントで行うことをお勧めします。
sql-server - SQL Server では、複数のノードをテーブルから XML に挿入できますか?
テーブル内のデータに基づいて、ストアド プロシージャで XML を生成したいと考えています。
次の挿入により、多くのノードを追加できますが、ハードコーディングするか、変数 (sql:variable) を使用する必要があります。
したがって、テーブル内の各レコードをループし、必要な値を変数に入れ、上記のステートメントを実行できます。
しかし、選択ステートメントと組み合わせてループを回避するだけでこれを行う方法はありますか?
編集以前SELECT FOR XML
にも同様のことを行っていましたが、複数のテーブルのデータの階層を操作するときは常に読みにくいと感じています。modify
生成された XML がより明示的で制御しやすいものを使用する何かがあることを期待していました。
mysql - 主キーと挿入に関する簡単なmysqlの質問
mysql では、自動インクリメントの場合、挿入操作に使用される主キーを取得するにはどうすればよいですか。
基本的に、ステートメントが完了すると、新しい自動インクリメント値が返されるようにします。
ありがとう!
insert - 解像度をダブルクリックしてダブル挿入しますか?
チーム メンバーが古い社内システムで問題に遭遇しました。ユーザーが Web ページのリンクをダブルクリックすると、ブラウザーから 2 つの要求が送信され、レースで同じレコードが 2 つのデータベースに挿入される可能性があります。調子; 最後に実行したものは主キー違反で失敗します。いくつかのソリューションとハックが提案され、議論されています。
Web ページで Javascript を使用して、最初のクリックでリンクを無効にすることにより、2 回目のクリックを軽減します。これは、問題の発生を減らすための迅速かつ簡単な方法ですが、完全になくすことはできません。
サーバー側でのリクエスト実行をトランザクションにラップします。これは、サーバーの負荷と問題のテーブルのロック レベルが原因で、操作のコストが高すぎると見なされています。
失敗した挿入によってスローされた主キー例外をキャッチし、それを識別して食べます。これには、(a) ベンダー ロックイン、データベース固有の例外のニュアンスを知る必要がある、(b) 正当なデータベース障害のログ記録/対処ができない可能性があるという欠点があります。
挿入が失敗した場合にレコードの更新を試行し、更新の結果をチェックして、影響を受ける 1 つのレコードが返されるようにする #3 の拡張。
考慮されていない他のオプションはありますか?見落とされていた提示されたオプションの長所と短所はありますか? すべての悪の中でどれが小さいですか?