SQLite建表语句示例(含所有数据类型、索引、自增主键、唯一索引)

下面是一个示例,展示如何创建一个用户信息表。

包含 SQLite 支持的所有数据类型,同时设置主键为自增、一个字段为唯一索引,以及另一个字段为普通索引:

sql 复制代码
-- 创建用户信息表
CREATE TABLE user_info (
    id INTEGER PRIMARY KEY AUTOINCREMENT,  -- 自增主键
    username TEXT UNIQUE,                  -- 唯一索引
    email TEXT,                            -- 普通索引
    age INTEGER,
    balance REAL,
    profile BLOB,
    is_active NUMERIC
);

-- 为 email 字段创建普通索引
CREATE INDEX idx_user_info_email ON user_info(email);

说明

id INTEGER PRIMARY KEY AUTOINCREMENT : id 是自增主键,自动生成唯一值。

username TEXT UNIQUE : username 字段是唯一索引,确保每个用户名在表中是唯一的。

email TEXT : email 字段将有一个普通索引,以加快基于电子邮件的查询。

age INTEGER: 用于存储整数类型的数据,如年龄。

balance REAL: 用于存储浮点数,如账户余额。

profile BLOB: 用于存储二进制数据,如用户的图片或其他文件。

is_active NUMERIC: 用于存储布尔值或其他数值类型,表示用户是否活跃。

通过这种表结构,你可以有效地利用 SQLite 的数据类型和索引功能来管理用户信息。

相关推荐
Y第五个季节2 分钟前
Redis - HyperLogLog
数据库·redis·缓存
Allen Bright24 分钟前
【MySQL基础-20】MySQL条件函数全面解析:提升查询逻辑的利器
数据库·mysql
Justice link1 小时前
企业级NoSql数据库Redis集群
数据库·redis·缓存
爱的叹息1 小时前
主流数据库的存储引擎/存储机制的详细对比分析,涵盖关系型数据库、NoSQL数据库和分布式数据库
数据库·分布式·nosql
XiaoLeisj1 小时前
【MyBatis】深入解析 MyBatis XML 开发:增删改查操作和方法命名规范、@Param 重命名参数、XML 返回自增主键方法
xml·java·数据库·spring boot·sql·intellij-idea·mybatis
dleei2 小时前
MySql安装及SQL语句
数据库·后端·mysql
信徒_2 小时前
Mysql 在什么样的情况下会产生死锁?
android·数据库·mysql
嘴对嘴编程4 小时前
oracle数据泵操作
数据库·oracle
·薯条大王9 小时前
MySQL联合查询
数据库·mysql
morris13111 小时前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁