在SQLite中,约束(Constraints)是用于定义和强制数据库表中数据的完整性的规则。它们确保表中的数据满足特定的条件,防止不合法或无效的数据插入、更新或删除。

以下是一些常见的SQLite约束:

1. PRIMARY KEY(主键约束):
   - 主键是表中的一列或一组列,其值唯一标识表中的每一行。
   - 示例:
     CREATE TABLE 表名 (
         列1 INTEGER PRIMARY KEY,
         列2 TEXT,
         列3 INTEGER
     );

2. UNIQUE(唯一约束):
   - 确保表中的某一列或一组列中的值是唯一的。
   - 示例:
     CREATE TABLE 表名 (
         列1 INTEGER,
         列2 TEXT UNIQUE,
         列3 INTEGER
     );

3. NOT NULL(非空约束):
   - 确保表中的某一列不包含NULL值。
   - 示例:
     CREATE TABLE 表名 (
         列1 INTEGER,
         列2 TEXT NOT NULL,
         列3 INTEGER
     );

4. CHECK(检查约束):
   - 允许定义一个条件,确保插入或更新的数据满足该条件。
   - 示例:
     CREATE TABLE 表名 (
         列1 INTEGER,
         列2 TEXT,
         列3 INTEGER CHECK (列3 >= 0)
     );

5. DEFAULT(默认约束):
   - 为列指定默认值,当插入新行时,如果未提供值,则使用默认值。
   - 示例:
     CREATE TABLE 表名 (
         列1 INTEGER,
         列2 TEXT DEFAULT '未知',
         列3 INTEGER
     );

6. FOREIGN KEY(外键约束):
   - 用于定义一个列或一组列的外键关系,连接到另一表的主键。
   - 示例:
     CREATE TABLE 表1 (
         列1 INTEGER PRIMARY KEY,
         列2 TEXT
     );

     CREATE TABLE 表2 (
         列3 INTEGER,
         列4 TEXT,
         FOREIGN KEY (列3) REFERENCES 表1(列1)
     );

这些约束有助于确保数据库中的数据完整性,以及提供对表之间关系的支持。在创建表时,可以根据实际需求选择适当的约束。


转载请注明出处:http://www.zyzy.cn/article/detail/9161/SQLite