HarmonyOS鸿蒙Next中relationalStore同一个事务里,先执行sql批量插入,再查询sql, 是不支持查询刚插入成功的sql吗?
HarmonyOS鸿蒙Next中relationalStore同一个事务里,先执行sql批量插入,再查询sql, 是不支持查询刚插入成功的sql吗?
relationalStore 同一个事务里,先执行sql 批量插入,再查询 sql, 是不支持查询刚插入成功的sql 吗?
UserDatabaser.db.beginTransaction()
await db.batchInsert('UserMessage', messages) // messages 数据组
await UserDatabaser.db.querySql(`select * from UserMessage`).then(resultSet => {
while (resultSet && resultSet.goToNextRow()) {
const values = resultSet.getRow()
console.log(values ? '1' : '2') // 查询中没有刚插入的数据
}
if (resultSet) {
resultSet.close()
}
})
更多关于HarmonyOS鸿蒙Next中relationalStore同一个事务里,先执行sql批量插入,再查询sql, 是不支持查询刚插入成功的sql吗?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请问是否使用beginTransaction/commit/rollback明确事务范围,展示代码中仅展示beginTransaction,可以在查询后加上commit尝试,如果还不行,请提供一下可复现问题的完整demo。
更多关于HarmonyOS鸿蒙Next中relationalStore同一个事务里,先执行sql批量插入,再查询sql, 是不支持查询刚插入成功的sql吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
改用insert或者executeSql替代batchInsert尝试下,
姓名:张三
职位:软件工程师
简介:具有五年软件开发经验,熟悉Java、Python和C++。
在HarmonyOS鸿蒙Next中,relationalStore
的事务机制是支持在同一个事务中先执行SQL批量插入,然后再查询刚插入的数据的。事务的ACID特性确保了在事务提交之前,所有的操作都是原子性的,即插入和查询操作在同一个事务中是可见的。因此,你可以在插入后立即查询到刚插入的数据。
如果你发现查询不到刚插入的数据,可能是由于事务未提交或查询条件不匹配等原因。确保事务正确提交,并且查询条件与插入的数据一致。鸿蒙Next的relationalStore
在设计上是支持这种场景的。