这是我的表(CELLID)结构。Knex不返回插入Id
+---------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+-------+
| CELL_ID | int(11) | NO | PRI | NULL | |
| STATUS | tinyint(4) | NO | | NULL | |
+---------+------------+------+-----+---------+-------+
这是我的代码插入到表中。
knex('CELLID').insert(insertObj)
.then(function (result) {
_log.info(reqContainer.uuid, "Successfully Added To CELLID||", result)
// respond back to request
_log.info(reqContainer.uuid, "Exiting CELLID_S");
return resolve(result) // respond back to request
})
.catch(function (err) {
_log.error(reqContainer.uuid, "Failed Adding To CELLID ||", err)
_log.error(reqContainer.uuid, "Exiting CELLID_S");
// respond back to request
return reject(Error("Failed Adding CELLID"));
})
插入成功后,必须返回Id。这不会发生在我的情况。插入时我总是得到并且ID为0。
我曾尝试添加一个额外的列,自动递增主键ID(删除CELL_ID作为PK)。在这种情况下,我得到了ID(自动递增值)。
我在这里错过了什么?
谢谢。
当返回0 ID可以你检查什么实际插入到数据库?如果您将id列的名称更改为'id'而不是'CELL_ID',它会有帮助吗? –
不,如果我将id列的名称更改为'id'而不是'CELL_ID',则无关紧要。只要我们的id是自动生成的,我们就会得到插入的id。 )。 –
同样的问题,不知道为什么:( –