我将Sqlite3与Flask微结构一起使用,但这个问题只涉及Sqlite方面的内容。。
下面是一段代码:
g.db.execute('INSERT INTO downloads (name, owner, mimetype) VALUES (?, ?, ?)', [name, owner, mimetype])
file_entry = query_db('SELECT last_insert_rowid()')
g.db.commit()
downloads
表中还有一列具有以下属性:id integer primary key autoincrement,
如果两个人同时编写上述代码,可能会产生错误。
交易可能很混乱。在Sqlite中,是否有一种简洁的内置方式来返回在插入之后生成的主键?
你这样做是有道理的。如果上面的截图是由两个脚本同时执行的,就不会有问题。
last_insert_rowid()
返回调用它的连接的最新INSERT语句的rowid。您还可以通过执行g.db.lastrowid
来获取rowid。相关问题 更多 >
编程相关推荐