『SQLite』约束怎么用

摘要:主要内容是 SQLite 中的约束,它是一种建立在表及其列上的强制执行的规则。包含主键约束、非空约束、唯一约束、检查约束、外键约束等。

什么是约束

在表及其数据列上强制执行的规则,用于限制数据库表中数据的类型、范围、格式等,以确保数据的完整性和一致性。

主键约束(PRIMARY KEY)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype PRIMARY KEY
);

唯一约束(UNIQUE)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype UNIQUE
);

非空约束(NOT NULL)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype NOT NULL
);

默认值约束(DEFAULT)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype DEFAULT default_value
);

检查约束(CHECK)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype CHECK (expression)
);

外键约束(FOREIGN KEY)

sql 复制代码
CREATE TABLE table_name (
    column_name datatype,
    FOREIGN KEY (column_name) REFERENCES other_table(other_column)
);

自动递增(AUTOINCREMENT)

sql 复制代码
CREATE TABLE table_name (
    column_name INTEGER PRIMARY KEY AUTOINCREMENT
);

注意

上述内容详讲见文章:SQLite的约束详解(内含案例)

相关推荐
冰暮流星26 分钟前
mysql之表子查询
数据库·mysql
Full Stack Developme1 小时前
CRM相关库表设计
数据库
步行cgn1 小时前
Spring 注入 Map 集合详解
数据库·python·spring
风跟我说过她2 小时前
SQL 一键转经典 Chen 风格 ER 图:开源 CLI + 在线工具 + Agent Skill
数据库·python·sql·开源·开源软件
这个DBA有点耶2 小时前
MySQL大表DDL锁表锁到崩溃?Online DDL的3个关键参数和实战避坑
数据库·mysql·架构
2302_1113 小时前
java依赖小结
java·运维·数据库
听到微笑3 小时前
Elasticsearch 如何存储与检索海量向量
数据库·elasticsearch
海浪仙人掌3 小时前
速动比率怎么分析?速动比率分析有哪些注意事项?
大数据·数据库·人工智能
企业数字化笔记4 小时前
固定资产历史数据怎么导入系统?Excel模板、字段映射和数据校验
android·java·数据库·后端
还是奇怪4 小时前
OpenAI GPT-5.6 构建指南拆解:创业公司如何用模型选择与 Responses API 降低 Agent 成本
java·数据库·人工智能·gpt