使用 JayData 向 Sqlite 数据库中插入一个新对象(记录),如何查询最后插入的 ID?我可以这样做,但它看起来不够优雅:
DB.Members.orderByDescending('member.Id').take(1).toArray(function(member){
alert(member.Name);
});
最佳答案
如果您定义了带有自动递增 Id 的 Member 类,则无需编写额外的查询,因为 Id 属性会在 saveChanges() 之后自动填充。
要为您的类定义一个自动递增的 Id,请检查您是否编写了以下内容:
$data.Entity.extend("Member", {
Id: { type: "int", key: true, computed: true },
...
});
var member = new Member();
member.Name = "a";
DB.Members.add(member);
DB.Members.saveChanges(function(){alert(member.Id);});
如果Id是手动设置的,那么你的查询只有在应用的单个用户手动插入记录的场景下才有效。 如果您从在线数据存储同步数据,我们必须共同制定解决方案。
有用吗?
关于javascript - 如何从 JayData 事务中获取最后插入的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14739212/