我正在使用带有node.js的MySql
我有这个查询并且有效:
connection.query('insert into username (name) values ("msg")', function(err, rows, fields) {
if(!err) {
} });
它插入字符串"msg"
,而不是变量msg
的值,但是当我想插入变量时,这不起作用:
connection.query('insert into username (name) values '+ msg, function(err, rows, fields) {
if(!err) {
} });
例如:
var msg =“你好世界!”;
答案 0 :(得分:0)
在第二种情况下,您缺少括号和引用有效插入语句的引号。您正在构建一个如下所示的sql语句:
'insert into username (name) values hello world'
这是畸形的。使用util模块可以更轻松地进行字符串格式化:
var util - require('util');
var mySql = util.format('insert into username (name) values ("%s")', 'hello world');
connection.query(mySql, function(err, rows, fields) {
if(!err) {
} });
答案 1 :(得分:0)
试试这段代码
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'pass',
database: 'db_name'
});
connection.query(`INSERT INTO user_table (name, mail, pass) VALUES ('${user_name}', '${user_name}', '${user_name}');`, function (err, result, fields) {
if (err) throw err;
});