![](/img/trans.png)
[英]Inserting or Updating multiple values into a MySQL table using Node.js
[英]Inserting to MySQL using variable from two-step (Node.js)
我想使用此代码在mysql中存储2行(要存储的变量来自exec):
#!/usr/bin/node
var mysql = require("mysql");
var tempId1 = '28-000006140194';
var tempId2 = '28-000006280f8c';
// First you need to create a connection to the db
var con = mysql.createConnection({
host: "localhost",
user: "xxx",
password: "xxx",
database: "xxx"
});
con.connect(function(err){
if(err){
console.log('Error connecting to Db');
return;
}
console.log('Connection established');
});
var TwoStep = require("two-step");
var exec, start;
exec = require('child_process').exec;
start = function() {
TwoStep(
function() {
exec("cat /sys/bus/w1/devices/" + tempId1 + "/w1_slave | grep t= | cut -f2 -d= | awk '{print $1/1000}'", this.val("t1"));
exec("cat /sys/bus/w1/devices/" + tempId2 + "/w1_slave | grep t= | cut -f2 -d= | awk '{print $1/1000}'", this.val("t2"));
},
function(err, t1, t2) {
var temp1 = parseFloat(t1).toFixed(2);
var temp2 = parseFloat(t2).toFixed(2);
var storeTemp1 = { tid: 1, temp: temp1 };
var storeTemp1 = { tid: 2, temp: temp2 };
con.query('INSERT INTO temperatures SET ?', storeTemp1, function(err,res){
if(err) throw err;
console.log('Last insert ID:', res.insertId);
});
con.query('INSERT INTO temperatures SET ?', storeTemp2, function(err,res){
if(err) throw err;
console.log('Last insert ID:', res.insertId);
});
con.end(function(err) {
});
}
);
};
当我执行此命令时,控制台上只有“已建立连接”,并且没有任何反应-scipt挂起(我需要按ctrl + c退出)。 db中也没有新记录。 我究竟做错了什么?
您正在声明一个start = function () { ...
变量,该变量在脚本的任何地方都没有被调用。 只需调用它!
// at end of script
start();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.