久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

node.js - node-mysql 插入多條數(shù)據(jù)

瀏覽:130日期:2024-07-19 11:21:31

問題描述

我有100條數(shù)據(jù),怎么用node插入到mysql在中啊,

我找了一種這樣的但是不好

var query = ’insert into news set ?’; connection.query(query,{title : ’node’,content : ’node’,nameConpany : ’woman’, time :’1512151’}

我的數(shù)據(jù)結(jié)構(gòu)是這樣{{“title ”,“content ”,“nameConpany ”,“time ”},{“title ”,“content ”,“nameConpany ”,“time ”},......}求怎么做

問題解答

回答1:

用事務(wù)循環(huán)插入、如果有一條插入失敗進行回滾

node.js - node-mysql 插入多條數(shù)據(jù)

mysql模塊、connection.beginTransaction是做事務(wù)

然后我這里封裝了一個函數(shù)、對傳入的數(shù)組做循環(huán)插入或更新之類的操作、如果有一條失敗了就回滾、全對了就commit

回答2:

文檔中有介紹

node.js - node-mysql 插入多條數(shù)據(jù)

如果你的值的對象

var d = [{xxx: a,xxx: b,xxx: c},{xxx: a,xxx: b,xxx: c},{xxx: a,xxx: b,xxx: c}];//把對象的轉(zhuǎn)成純數(shù)組var values = [];d.forEach(function(n, i){ var _arr = []; for(var m in n){_arr.push(n[m]); } values.push(_arr);})

如果只是數(shù)組就比較簡單了

var values = [[1,2,4],[5,1,7]];var sql = 'INSERT INTO xxx(a,b,c) VALUES ?';mysql.query(sql, [values], function (err, rows, fields) { callback(err, rows);});

批量插入時最好同時插入,如果循環(huán)遍歷查詢性能會有很大影響。

下面是從網(wǎng)上找到的測試結(jié)果

Innodb引擎

InnoDB 給 MySQL 提供了具有事務(wù)(commit)、回滾(rollback)和崩潰修復(fù)能力(crash recovery capabilities)的事務(wù)安全(transaction-safe (ACID compliant))型表。InnoDB 提供了行鎖(locking on row level)以及外鍵約束(FOREIGN KEY constraints)。

InnoDB 的設(shè)計目標是處理大容量數(shù)據(jù)庫系統(tǒng),它的 CPU 利用率是其它基于磁盤的關(guān)系數(shù)據(jù)庫引擎所不能比的。在技術(shù)上,InnoDB 是一套放在 MySQL 后臺的完整數(shù)據(jù)庫系統(tǒng),InnoDB 在主內(nèi)存中建立其專用的緩沖池用于高速緩沖數(shù)據(jù)和索引。

測試環(huán)境

Macbook Air 12mid apache2.2.26 php5.5.10 mysql5.6.16

總數(shù)100W條數(shù)據(jù)

插入完后數(shù)據(jù)庫大小38.6MB(無索引),46.8(有索引)

無索引單條插入 總耗時:229s 峰值內(nèi)存:246KB有索引單條插入 總耗時:242s 峰值內(nèi)存:246KB無索引批量插入 總耗時:10s 峰值內(nèi)存:8643KB有索引批量插入 總耗時:16s 峰值內(nèi)存:8643KB無索引事務(wù)插入 總耗時:78s 峰值內(nèi)存:246KB有索引事務(wù)插入 總耗時:82s 峰值內(nèi)存:246KB無索引Load Data插入 總耗時:12s 峰值內(nèi)存:246KB有索引Load Data插入 總耗時:11s 峰值內(nèi)存:246KBMyIASM引擎

MyISAM 是MySQL缺省存貯引擎。設(shè)計簡單,支持全文搜索。

測試環(huán)境

Macbook Air 12mid apache2.2.26 php5.5.10 mysql5.6.16

總數(shù)100W條數(shù)據(jù)

插入完后數(shù)據(jù)庫大小19.1MB(無索引),38.6(有索引)

無索引單條插入 總耗時:82s 峰值內(nèi)存:246KB有索引單條插入 總耗時:86s 峰值內(nèi)存:246KB無索引批量插入 總耗時:3s 峰值內(nèi)存:8643KB有索引批量插入 總耗時:7s 峰值內(nèi)存:8643KB無索引Load Data插入 總耗時:6s 峰值內(nèi)存:246KB有索引Load Data插入 總耗時:8s 峰值內(nèi)存:246KB

相關(guān)文章:
主站蜘蛛池模板: 垣曲县| 汨罗市| 西城区| 黄大仙区| 东港市| 天津市| 宁明县| 铁力市| 山阴县| 武胜县| 开封县| 夏河县| 如皋市| 横山县| 诸暨市| 景东| 佛山市| 若羌县| 富民县| 奉贤区| 花垣县| 曲水县| 观塘区| 乌海市| 新建县| 黔西县| 金塔县| 日喀则市| 平乡县| 五台县| 满城县| 屯门区| 南华县| 三台县| 华容县| 克东县| 互助| 大悟县| 额济纳旗| 贡觉县| 长子县|