這是我的表(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。 )。 –
同樣的問題,不知道爲什麼:( –