一、创建表的基本概念
在SQLite中,表是一个二维数组,由若干行和若干列组成。每行代表一个记录,每列代表一个字段。在表中,每个字段都有一个指定的数据类型,例如整型、文本类型等等。
在创建表之前,我们要考虑表名、字段名、数据类型以及字段属性等等因素。
下面是一个简单的创建表的例子:
CREATE TABLE test (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
);
上面的例子创建了一个表名为test的表,其中包含三个字段:id、name和age。id字段为INTEGER类型,并设置为表中的主键,name字段为TEXT类型,并设置为非空字段,age字段为INTEGER类型。
二、创建表的语法
SQLite中创建表的语法如下:
CREATE TABLE [IF NOT EXISTS] 表名 (
列名1 数据类型1 [列级约束条件],
列名2 数据类型2 [列级约束条件],
...,
列名n 数据类型n [列级约束条件]
[表级约束条件]
);
其中,IF NOT EXISTS是一个可选项,他的作用是判断表是否存在,如果存在,则不执行创建表命令,否则执行创建表命令。
列级约束条件包括:
- NOT NULL:该字段不能为空
- UNIQUE:该字段唯一,不能出现相同的值
- PRIMARY KEY:该字段为表的主键,不能出现重复值
- DEFAULT:指定该字段的默认值
表级约束条件包括:
- PRIMARY KEY:指定该表的主键
- FOREIGN KEY:指定该表的外键
- CHECK:指定该表的条件约束
- UNIQUE:指定该表的唯一性约束
下面是一个包含表级约束条件的例子:
CREATE TABLE student (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER,
class_id INTEGER,
FOREIGN KEY(class_id) REFERENCES class(id)
);
上面的例子创建了一个名为student的表,包含四个字段:id、name、age和class_id。其中,id字段为主键,name字段不能为空,class_id字段为引用了id字段的class表的外键。
三、创建表的示例
1、创建包含多个字段的表
下面是一个创建包含多个字段的表的例子:
CREATE TABLE person (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER,
email TEXT,
create_date DATE DEFAULT (datetime('now','localtime'))
);
上面的例子创建了一个名为person的表,包含五个字段:id、name、age、email和create_date。其中,id字段为表的主键,create_date字段为日期类型,并设置为默认当前时间。
2、创建包含外键的表
下面是一个创建包含外键的表的例子:
CREATE TABLE employee (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER,
department_id INTEGER,
FOREIGN KEY (department_id) REFERENCES department(id)
);
上面的例子创建了一个名为employee的表,包含四个字段:id、name、age和department_id。其中,id字段为表的主键,department_id字段为引用了id字段的department表的外键。
3、创建包含多个唯一字段的表
下面是一个创建包含多个唯一字段的表的例子:
CREATE TABLE student (
id INTEGER PRIMARY KEY,
name TEXT UNIQUE NOT NULL,
email TEXT UNIQUE
);
上面的例子创建了一个名为student的表,包含三个字段:id、name和email。其中,id字段为表的主键,name字段为非空唯一字段,email字段为唯一字段。
总结
本文详细介绍了SQLite创建表的基本概念、创建表的语法和创建表的示例。通过本文的学习,我们可以了解到如何正确地创建表,并加深对SQLite的理解。
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/183229.html