Node.js oracledb UPDATE 卡住了(承诺从未解决)
Node.js oracledb UPDATE gets stuck (promise never resolved)
我遇到了 nodejs oracledb 包的问题。执行 SELECT 查询有效,但是当我从字面上执行一个更新查询时,库会卡住(承诺永远不会解决)并且 none 任何新的其他 oracle 命令都将得到解决(包括新的 SELECT 查询)。
const out = await db.connection.execute( `SELECT COUNT(*) FROM MYTABLE WHERE MYFIELD = :1`, ['JOHN] )
上述请求已解决,而下一个 UPDATE 请求被卡住,承诺永远不会解决。
try{
const out = await db.connection.execute(`UPDATE MYTABLE SET MYFIELD = :1 WHERE ID = :2`, ['JOHN', 1])
console.log("success")
}catch(err){
console.error("Error", err)
}
它卡住了。如果我再做一次 SELECT,新的请求也会无限期地卡住。
一般原因是 运行 在 SQL*Plus 或 SQL Developer 等工具中使用了相同(或相似)的语句,但未提交。因此,该行已被锁定,您的 Node.js 应用程序无法对其进行更新。
我遇到了 nodejs oracledb 包的问题。执行 SELECT 查询有效,但是当我从字面上执行一个更新查询时,库会卡住(承诺永远不会解决)并且 none 任何新的其他 oracle 命令都将得到解决(包括新的 SELECT 查询)。
const out = await db.connection.execute( `SELECT COUNT(*) FROM MYTABLE WHERE MYFIELD = :1`, ['JOHN] )
上述请求已解决,而下一个 UPDATE 请求被卡住,承诺永远不会解决。
try{
const out = await db.connection.execute(`UPDATE MYTABLE SET MYFIELD = :1 WHERE ID = :2`, ['JOHN', 1])
console.log("success")
}catch(err){
console.error("Error", err)
}
它卡住了。如果我再做一次 SELECT,新的请求也会无限期地卡住。
一般原因是 运行 在 SQL*Plus 或 SQL Developer 等工具中使用了相同(或相似)的语句,但未提交。因此,该行已被锁定,您的 Node.js 应用程序无法对其进行更新。