プロジェクト(nodejs)では、一度に複数のデータをデータベースに挿入する必要があります。データベースはMySQLです。ループ挿入のパフォーマンスが悪すぎるため、バッチ挿入を使用してデータ挿入のパフォーマンスを向上させるようなものです。 バッチ挿入用のデータベースのテーブル構造は次のとおりです。 1. データベース接続 var mysql = require('mysql'); // データベース情報 var connection = mysql.createConnection({ ホスト: 'localhost', ユーザー: 'データベースユーザー名', パスワード: 'データベースログインパスワード', データベース: '操作データベース名' }); 挿入されたデータをネストされた配列に変換する たとえば、挿入する 2 つのデータ: 記録1: 出典:"インデックス" 「www.alibaba.com」へ ステータス:1 新着:0 記録2: 出典:"index1" 宛先:"www.google.com" ステータス:1 新着:0 次の形式に変換します。 var値 = [ ["インデックス","www.alibaba.com",1,0], ["インデックス1","www.google.com",1,0] ]; 挿入文を書く var sql = "url(`from`,`to`,`status`, `is_new`) の値にINSERT INTO ?"; クエリ関数を呼び出してデータの挿入を完了します connection.query(sql, [値], 関数 (err, 行, フィールド) { もしエラーが起きたら console.log('挿入エラー - ', err.message); 戻る; } console.log("挿入成功"); }); 完全なコード: var mysql = require('mysql'); // データベース情報 var connection = mysql.createConnection({ ホスト: 'localhost', ユーザー: 'データベースユーザー名', パスワード: 'データベースログインパスワード', データベース: '操作データベース名' }); var値 = [ ["インデックス","www.alibaba.com",1,0], ["インデックス1","www.google.com",1,0] ]; var sql = "url(`from`,`to`,`status`, `is_new`) の値にINSERT INTO ?"; connection.query(sql, [値], 関数 (err, 行, フィールド) { もしエラーが起きたら console.log('挿入エラー - ', err.message); 戻る; } console.log("挿入成功"); }); 同時に、トランザクションベースの操作をここに記録します(まだ実践していないため、具体的な効果は不明です) トランザクションループを使用して挿入し、挿入が失敗した場合はロールバックします。 mysqlモジュール、connection.beginTransactionはトランザクションを実行するためのものです 次に、渡された配列に対してループ挿入や更新などの操作を実行する関数をここでカプセル化します。 1 つでも失敗した場合はロールバックし、すべてが正しければコミットします。 要約する 上記は、Node.js で MySQL データベースにバッチデータを挿入する方法について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: ウェブサイトのコンテンツが検索エンジンに含まれないようにする方法
React コンポーネントのライフサイクル機能とは何ですか?ライフサイクル関数は、ES6 構文クラス...
1. ファイアウォールの基本的な使い方起動する: systemctl は、firewalld を起動...
1. エフェクト表示JavaScript で書かれた宇宙飛行士のウォッチフェイス。 http://x...
<br />国内のウェブサイトが本格的に普及し、ユーザーエクスペリエンスに重点が置かれる...
目次1. キープアライブの使用使用例: 1. すべてのページをキャッシュする: 2. 条件に基づいて...
Docker の作成Compose の紹介Compose は、マルチコンテナ Docker アプリケ...
目次1. はじめに2. 実装3. HTML ドラッグ アンド ドロップ API を使用しないのはなぜ...
1いくつかの一般的な文字セットMySQL で最も一般的な文字セットには、ASCII 文字セット、ラテ...
今日、HTML に問題を発見しました。多くのデフォルト フォントが提供されていますが、「Bold」、...
xshellを使用してLinuxに接続する利点Windows環境でLinuxを直接操作できるインター...
DOM の概念DOM: ドキュメント オブジェクト モデル: ドキュメント オブジェクト モデルは、...
一般的に、マウスは上向きの斜め矢印として表示され、テキストの上に移動すると垂直線になり、ハイパーリン...
<area> タグは、イメージ マップ内の領域を定義します (注: イメージ マップはク...
1. SQL インジェクションとは何ですか? SQL インジェクションは、入力パラメータに SQL ...
目次1. 使用方法1. 基本的な使い方2. 2番目のパラメータ - フィルター3. 3番目のパラメー...