Webkit (至少在iPhone和Safari上)通过SQLite支持HTML5的数据库存储。
我正在尝试弄清楚如何最好地获得以下事务的插入ID (数据库中有一个自动递增字段'id‘)。
db.transaction(function(tx) {
tx.executeSql("INSERT INTO teams (name) VALUES (?)", [$('#team_name').val()]);
});发布于 2009-03-31 18:39:41
下面的代码样本来自苹果的文档,我知道它可以在iPhone和Safari上运行,也可能在WebKit上运行。您可以使用resultSet.insertId从resultSet响应对象中获取插入id,还可以获取受影响的行数,例如,对于更新查询,可以使用resultSet对象的rowsAffected属性。
db.transaction(
function (transaction) {
transaction.executeSql('INSERT into tbl_a (name) VALUES ( ? );',
[ document.getElementById('nameElt').innerHTML ],
function (transaction, resultSet) {
if (!resultSet.rowsAffected) {
// Previous insert failed. Bail.
alert('No rows affected!');
return false;
}
alert('insert ID was '+resultSet.insertId);
transaction.executeSql('INSERT into tbl_b (name_id, color) VALUES (?, ?);',
[ resultSet.insertId,
document.getElementById('colorElt').innerHTML ],
nullDataHandler, errorHandler);
}, errorHandler);
}, transactionErrorCallback, proveIt);Apple's HTML5 Database Documentation
发布于 2009-03-21 22:19:25
像这样的东西应该是有效的:
SELECT last_insert_rowid();https://stackoverflow.com/questions/669892
复制相似问题