调用游标下的lastrowid
可以获取插入之前的表里id字段存放到哪个自增id
cursor.lastrowid
mysql> select * from userinfo; +----+-------+-----+ | id | name | pwd | +----+-------+-----+ | 1 | mike | 123 | | 2 | jack | 456 | | 3 | alex | 555 | | 4 | peter | 989 | | 5 | app | 123 | | 6 | tom | 556 | +----+-------+-----+ 6 rows in set (0.03 sec)
我再用脚本 插入三条记录 自增id就是从 7开始,获取我插入记录的 第一条记录的自增id,
下面我插入三条记录,自增id分别是7、8、9
import pymysql mysql_host = '192.168.0.106' port = 3306 mysql_user = 'root' mysql_pwd = '123' encoding = 'utf8' # 建立 连接mysql服务端 conn = pymysql.connect( host=mysql_host, # mysql服务端ip port=port, # mysql端口 user=mysql_user, # mysql 账号 password=mysql_pwd, # mysql服务端密码 db='db10', # 操作的库 charset=encoding # 读取字符串编码 ) # 拿到游标对象 cur = conn.cursor() ''' 游标是给mysql提交命令的接口 mysql> 把sql语句传递到这里 ''' # 执行sql语句 # 增、删、改 sql= 'insert into userinfo(name,pwd) values(%s, %s); ' # 把sql语句传给游标执行 # 让游标execute去帮我拼接字符串 rows = cur.executemany(sql,[('peter4','989'),('app5','123'),('tom6','5566')]) print(cur.lastrowid) # 想让insert 语句 插入数据库里面去需要加上这个 conn.commit() # 执行完sql语句要关闭游标和mysql连接 cur.close() conn.close() # 7