SQLite 插入数据并返回自增ID

要插入数据并返回自增ID,我们可以使用SQLite的last_insert_rowid()函数。这个函数返回了最后一次插入操作的自增ID。

下面我们通过一个示例来演示如何插入数据并返回自增ID。

首先,创建一个表来存储学生信息:

复制代码
CREATE TABLE students (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT,
    age INTEGER
);

SQL

Copy

然后,我们可以使用INSERT INTO语句将数据插入到表中,并使用last_insert_rowid()函数来获取最后一次插入操作的自增ID:

复制代码
INSERT INTO students (name, age) VALUES ('John', 20);
SELECT last_insert_rowid();

SQL

Copy

执行完这个SQL语句后,我们将得到最后一次插入操作的自增ID。

示例

为了更好地理解插入数据并返回自增ID的过程,我们来看一个完整的示例。

假设我们有一个网站,用户可以通过该网站注册账号。我们需要将用户的相关信息存储到数据库中,并返回自增的用户ID。以下是一个简化的示例:

首先,我们创建一个存储用户信息的表:

复制代码
CREATE TABLE users (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    username TEXT,
    password TEXT
);

SQL

Copy

然后,我们可以使用INSERT INTO语句插入新的用户数据,并使用last_insert_rowid()函数返回自增ID:

复制代码
INSERT INTO users (username, password) VALUES ('john_doe', 'password123');
SELECT last_insert_rowid();

SQL

Copy

在这个示例中,我们插入了一个新用户的信息,用户名为'john_doe',密码为'password123'。通过执行INSERT和SELECT语句,我们可以插入并获取到新用户的自增ID。

相关推荐
杨运交1 小时前
[060][调度模块]Redisson vs Redis 原生锁:两种分布式锁实现深度对比
数据库·redis·分布式
FungLeo1 小时前
Node 后端实战 · 列表查询到底怎么写?一个通用 DSL 封装,过滤分页排序一次搞定
数据库·node.js·serverless·dsl 封装·通用列表查询
抓蛙师2 小时前
多租户 tenant_id SQL 注入漏洞分析与应急响应报告
数据库·sql
ACP广源盛139246256732 小时前
Qwen3.8‑2.4T 开源落地@ACP#国产 MoE 私有化部署下 GSV2221 视频转换芯片机遇分析
大数据·数据库·人工智能
七牛开发者3 小时前
为什么 Go 很适合 AI 辅助开发?
数据库·人工智能·python·elasticsearch·log4j
何以解忧,唯有..5 小时前
数据库索引失效的常见情况与优化策略
数据库·sql·oracle
这个DBA有点耶5 小时前
分布式数据库到底该不该上?从判断标准到架构选型的实战思考
数据库·架构·dba
01_ice6 小时前
MySQL库和表的操作
数据库·mysql
oradh6 小时前
Oracle UNDO表空间管理维护总结
数据库·oracle·undo表空间·undo表空间管理·undo表空间管理维护
six_6 小时前
C# 上位机(持续更新中)
前端·面试·c#