【问题标题】:Insert query is not inserting values in the table插入查询未在表中插入值
【发布时间】:2013-05-20 20:53:16
【问题描述】:

我想插入从req.body 获得的值。我将它保存在变量中,然后将它们作为插入查询中的值传递。但表中没有保存任何内容。 请帮帮我:

 var name=req.body.Name;
var CreatedBy=req.body.CreatedBy;
var CreatedDate=req.body.CreatedDate;
var ModifiedBy=req.body.ModifiedBy;
var ModifiedDate=req.body.ModifiedDate;
var email=req.body.Email;
var idAgency= Guid();
console.log(name);

client.query('INSERT INTO Agency (idAgency ,Name,CreatedBy, CreatedDate, ModifiedBy , ModifiedDate ,Email, Active ) VALUES (idAgency ,name ,CreatedBy ,CreatedDate, ModifiedBy ,ModifiedDate,email, 1)', function(err,data){
    if(err){
        console.log(err);
        console.log(" not inserted") ;
    }
    else{
        console.log("insert");
        console.log(data) ;
    }
});

【问题讨论】:

  • 应该引用整数以外的值,也许这就是原因。你得到任何错误错误?
  • 日志怎么样,这样你就知道你即将到达这里(假设你正在查看 console.log(err)
  • 不记录“插入”,但表中没有插入任何内容
  • 如果您在代码中显示调用此函数的位置会有所帮助。我们甚至不知道代码是否曾经被执行过。你在控制台中得到了什么?错误分支中的任何消息
  • 可以肯定的是,尝试打印您在client.query中使用的查询字符串,然后在mysql中执行它。

标签: mysql node.js


【解决方案1】:

尝试更改插入查询,如下所示:

var name=req.body.Name;
var CreatedBy=req.body.CreatedBy;
var CreatedDate=req.body.CreatedDate;
var ModifiedBy=req.body.ModifiedBy;
var ModifiedDate=req.body.ModifiedDate;
var email=req.body.Email;
var idAgency= Guid();
console.log(name);

client.query('INSERT INTO Agency (idAgency ,Name,CreatedBy, CreatedDate, ModifiedBy , ModifiedDate ,Email, Active ) VALUES (''' + idAgency + ''' ,''' +name + ''' ,''' +CreatedBy + ''' ,''' +CreatedDate + ''' , ''' +ModifiedBy + ''' ,''' +ModifiedDate + ''',''' +email + ''', '1')', function(err,data){
    if(err){
        console.log(err);
        console.log(" not inserted") ;
    }
    else{
        console.log("insert");
        console.log(data) ;
    }
});

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-27
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多