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()
相关推荐
Wang's Blog几秒前
Kafka: Connect 实战之MySQL 数据双向同步集成方案
mysql·kafka
大数据追光猿3 分钟前
【大数据生产问题】Flink CDC 同步 MySQL 到 StarRocks 时因字段新增导致任务失败?
大数据·数据库·mysql·flink
大布布将军6 分钟前
⚡️ 性能加速器:利用 Redis 实现接口高性能缓存
前端·数据库·经验分享·redis·程序人生·缓存·node.js
青石路6 分钟前
用了MySQL的INSERT ON DUPLICATE KEY UPDATE,怎么还报唯一索引冲突错误
后端·sql·mysql
Ahuuua8 分钟前
Spring 事务传播行为详解
数据库·sql·spring
2345VOR10 分钟前
【ESP32C3接入2025年冬火山大模型教程】
开发语言·数据库·豆包·火山
IvanCodes11 分钟前
openGauss 核心体系架构深度解析
数据库·sql·postgresql·openguass
陌路2011 分钟前
redis主从复制
数据库·redis
@淡 定14 分钟前
事务ACID特性与隔离级别详解
数据库·oracle
·云扬·16 分钟前
MySQL大批量数据导入性能优化:从原理到实践
数据库·mysql·性能优化