首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >节点js插入mysql变量不起作用

节点js插入mysql变量不起作用
EN

Stack Overflow用户
提问于 2015-10-13 03:06:48
回答 2查看 2.5K关注 0票数 0

我在node.js中使用MySql

我有一个查询,它可以工作:

代码语言:javascript
复制
 connection.query('insert into username (name) values ("msg")', function(err,    rows, fields) {

    if(!err) {


     } });

它插入字符串"msg",而不是变量msg的值,但是当我想插入变量时,这不起作用:

代码语言:javascript
复制
connection.query('insert into username (name) values '+ msg, function(err,    rows, fields) {

    if(!err) {


     } });

例如:

var msg = "hello world!";

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-13 03:11:18

在第二种情况下,您缺少构成有效insert语句的圆括号和引号。您正在构建一条如下所示的sql语句:

代码语言:javascript
复制
'insert into username (name) values hello world'

这是畸形的。使用util模块可以简化字符串的格式化:

代码语言:javascript
复制
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) {


 } });
票数 0
EN

Stack Overflow用户

发布于 2018-06-10 07:15:08

试试这段代码

代码语言:javascript
复制
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;
  });
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33088440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档