python mysql insert 时 获取 自增 id的值

在MySQL中,当你使用INSERT语句插入一行数据到拥有自增主键的表时,你可以通过使用LAST_INSERT_ID()函数来获取这个新的自增ID值。

以下是一个简单的例子:

假设你有一个表users,它有一个自增的主键id,和其他一些字段比如usernameemail

复制代码
INSERT INTO users (username, email) VALUES ('exampleuser', 'user@example.com');
SELECT LAST_INSERT_ID();

第一条INSERT语句插入新用户数据,第二条SELECT语句返回最新插入行的自增ID值。

在编程语言中,比如python,你可以使用对应的数据库接口函数来获取这个值。例如,在python的MySQLi扩展中,你可以这样做:

复制代码
import mysql.connector
 
# 连接到MySQL数据库
conn = mysql.connector.connect(
    host='hostname',
    user='username',
    password='password',
    database='dbname'
)
cursor = conn.cursor()
 
# 执行INSERT语句
add_query = """
INSERT INTO your_table_name (column1, column2)
VALUES (%s, %s);
"""
data = ('value1', 'value2')
cursor.execute(add_query, data)
 
# 提交事务
conn.commit()
 
# 获取自增ID的值
last_id = cursor.lastrowid
print('The last inserted ID is:', last_id)
 
# 关闭连接
cursor.close()
conn.close()
相关推荐
DuelCode14 分钟前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
幽络源小助理25 分钟前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
Hello.Reader1 小时前
Redis 延迟排查与优化全攻略
数据库·redis·缓存
简佐义的博客2 小时前
破解非模式物种GO/KEGG注释难题
开发语言·数据库·后端·oracle·golang
爬山算法2 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
老纪的技术唠嗑局4 小时前
OceanBase PoC 经验总结(二)—— AP 业务
数据库
阿里云大数据AI技术5 小时前
OpenSearch 视频 RAG 实践
数据库·人工智能·llm
m0_623955667 小时前
Oracle使用SQL一次性向表中插入多行数据
数据库·sql·oracle
阿蒙Amon8 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#
东窗西篱梦8 小时前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式