javascript - 创建用户API Mysql自增bug

标签 javascript mysql api

我试图让一个简单的创建用户函数运行,但不断收到一个奇怪的 sql 错误,我假设这是由于我使用 mysql 的自动递增键时出现的某种错误,但无法识别实际问题。

下面是我的服务器代码示例:

app.post('/createPhysician', function(req, res) {
    console.log(req.body);
    // do input checking here
    var createPromise = interact.createPhysician(req.body.physicianID,
    req.body.firstName,
    req.body.lastName,
    req.body.yearNum,
    req.body.position,
    req.body.isAttending,
    req.body.highRiskTrained)

    //did promise
    createPromise.then(function(createResponse) {
        res.status(200).json({"status":"success"}); // .end because we just want to return an empty response
    }).catch(function(err) {
        console.log(err);
        res.status(500).json(err);
    });
});

下面是函数的 interact.sql 代码:

createPhysician: function(
firstName,
lastName,
yearNum,
position,
isAttending,
highRiskTrained) {
    var qry = "insert into Physician (firstName, lastName, yearNum, position, isAttending, highRiskTrained) values \
    ('"+firstName+"', '"+lastName+"', "+yearNum+", '"+position+"', "+isAttending+", "+highRiskTrained+");";
    return runQuery(qry);
}

下面是我的 mysql 表的描述: enter image description here

下面是我在 Postman 中输入的内容:

{
    "firstName": "firstName",
    "lastName": "lastName",
    "yearNum": 1,
    "position": "coder",
    "isAttending": 1,
    "highRiskTrained": 0
}

以下是我在 Postman 中收到的请求错误:

{
    "code": "ER_BAD_FIELD_ERROR",
    "errno": 1054,
    "sqlMessage": "Unknown column 'coder' in 'field list'",
    "sqlState": "42S22",
    "index": 0,
    "sql": "insert into Physician (firstName, lastName, yearNum, position, isAttending, highRiskTrained) values         ('undefined', 'firstName', lastName, '1', coder, 1);"
}

请求正文的 API 控制台日志输出如下:

{ firstName: 'firstName',
  lastName: 'lastName',
  yearNum: 1,
  position: 'coder',
  isAttending: 1,
  highRiskTrained: 0 }

最佳答案

用函数包装查询时,确保查询使用正确的参数并正确地传递给函数。

对最终不过是打字错误的问题进行正式回答总是感觉有点奇怪,但我想你永远不知道谁可能需要指出相同类型的打字错误。

关于javascript - 创建用户API Mysql自增bug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48693584/

相关文章:

api - Magento - API 库存数量更新(慢如 hell )

api - DocuSignAPI - 检索信封发件人的详细信息

javascript - 我怎样才能把这个 SVG ‘Sidebar Menu’ 放在右边?

javascript - jQuery 自动完成与多个输入上的 getJSON 搜索

mysql - 将数据从一个表传输到同一数据库中的另一个表

mysql - 数据库表路径组合

javascript - ReactJS - 当使用条件渲染不可行时,如何生成可扩展的组件?

javascript - 如何获取键包含下划线中的对象?

mysql - 在给定时间段搜索预订时,SQL 查询显示错误值

java - 在 API 请求上使用附加 header 参数跳过 Oauth 2.0 授权 - Spring Security