0

我正在使用 node.js 编写一个 HTTP 服务器,用于与客户端交互并将它们发送的数据存储到 mysql 数据库中。我正在使用 node-mysql 模块与数据库进行交互。以下是我的代码片段:

mysql_conn.query('INSERT INTO systems VALUES ( ? )', [system.ClientID,
    system.Application, system['System Information']], function(err, result) {
    if (err) {
        cb(err, res);
    } else {
        resData = {Status : 'Success'};
        cb(null, res, resData);
    }
});

结果查询如下所示:

INSERT INTO systems VALUES ( 'ED1758FD-1ED7-4907-A4FF-BCA41830124A' )

我正在传递一个包含三个元素的数组,但查询中只显示一个。文档说:

数组变成列表,例如 ['a', 'b'] 变成 'a', 'b'

难道我做错了什么?我对javascript很陌生。如果有无知,请容忍。

4

1 回答 1

1

如果你有 3 个变量,应该有 3 个?换句话说,您的 SQL 查询应该如下所示:INSERT INTO systems VALUES ( ?, ?,? ) 如果您不确定顺序,并且想要指定顺序,您应该将查询更改为如下内容:INSERT INTO systems(field1, field2, field3) VALUES ( ?, ?,? )其中字段是 MySQL 表中的实际字段。

于 2013-01-17T08:56:14.870 回答