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()
相关推荐
2501_921939261 分钟前
Redis
数据库·redis·缓存
星栈17 分钟前
CQRS 双库架构:给事件存储单独开一个数据库,到底值不值?
数据库·全栈
YF021133 分钟前
深度解构Android OkDownload断点续传
android·数据库·okhttp
测试员周周35 分钟前
【Appium 系列】第04节-Page Object 模式 — BasePage 基类设计
开发语言·数据库·人工智能·python·语言模型·appium·web app
海棠Flower未眠38 分钟前
Spring Boot 2.4后,特定配置文件不能再使用spring.profiles.include的解决思路
数据库·spring boot·spring
jran-43 分钟前
MySQL单表操作
数据库·mysql
北秋,1 小时前
SQL Server(Microsoft 数据库)基础用法 + 数字型 + 字符型 完整联合注入
数据库·microsoft
June`1 小时前
多线程redis项目基石
数据库·redis·缓存
重生之小比特1 小时前
【MySQL 数据库】事务
数据库·mysql
云边有个稻草人1 小时前
金仓数据库KingbaseES:自动创建表空间目录,简化部署适配云原生
数据库·kingbasees·数据库运维·国产化数据库·云原生适配·表空间管理