查找自动增量字段的值(Finding the value of an auto-increment field)
我有一个简单的注册表单,在“学生”表中创建一个新记录:
cur = con.cursor() query = "INSERT INTO students (Name, Address, Major, Phone, Email, Password) values (%s, %s, %s, %s, %s, %s)" args = [name, address, major,phone, email, password] cur.execute(query, args) con.commit()列Id自动递增,因此为了获得最后一个Id,我选择Max
query = "SELECT MAX(Id) FROM students;" cur.execute(query) id = cur.fetchone()[0]它适用于我的小作业项目,但如何在一个重载项目中完成,在select语句之前有可能创建一些东西?
I have a simple registration form which creates a new record in "Students" table:
cur = con.cursor() query = "INSERT INTO students (Name, Address, Major, Phone, Email, Password) values (%s, %s, %s, %s, %s, %s)" args = [name, address, major,phone, email, password] cur.execute(query, args) con.commit()The column Id is auto-incremented, so in order to get the last Id, I select Max
query = "SELECT MAX(Id) FROM students;" cur.execute(query) id = cur.fetchone()[0]It works in my little homework-project, but how would it be done in a heavy-loaded project, where there is a possibility of something being created before the select statement?
最满意答案
使用lastrowid属性:
... cur.execute(query, args) id = cur.lastrowidUse lastrowid attribute:
... cur.execute(query, args) id = cur.lastrowid更多推荐
发布评论