SQLite 创建表学习笔记

什么是 SQLite 数据库

SQLite 是一个嵌入式关系型数据库管理系统,它是一个零配置、无服务器的文本文件数据库。SQLite 的设计目标是嵌入式、轻量级,其实现也比较精简,占用资源少,不需要单独的服务器进程和系统daemon支持,可以在各种操作系统中运行。

创建 SQLite 数据库

首先,我们需要创建一个 SQLite 数据库。SQLite 使用 .db 文件作为数据库文件,通过命令行创建一个空的数据库文件:

shCopy Code
touch example.db

创建一张表

SQLite 使用 SQL 语言进行数据操作,下面介绍如何使用 SQL 语句创建一张表。我们以一个学生信息表为例,包括字段:姓名 name、年龄 age、性别 gender、分数 score,其中姓名为主键。

创建表的语法如下:

sqlCopy Code
CREATE TABLE table_name ( column1 datatype constraint, column2 datatype constraint, column3 datatype constraint, ..... );

其中,table_name 表示表的名称,column1、column2、column3...... 表示表的字段名,datatype 表示字段的数据类型,constraint 表示字段的约束条件,如 NOT NULL、UNIQUE、PRIMARY KEY 等。

下面是创建学生信息表的 SQL 语句:

sqlCopy Code
CREATE TABLE student ( name TEXT PRIMARY KEY, age INTEGER NOT NULL, gender CHAR(10) DEFAULT '男', score REAL );

这个语句创建了一个名为 student 的表,包含四个字段:姓名 name、年龄 age、性别 gender、分数 score。其中,姓名为主键,必须唯一,不能重复;年龄字段不能为空,需要设置 NOT NULL 约束;性别字段默认值为 '男',如果没有指定则默认为 '男';分数字段可以存储浮点数。

实例

假设我们有三位学生,分别是小明、小红、小刚,他们的年龄分别是 18、19、20,性别分别是男、女、男,分数分别是 80、90、85。下面是插入这些数据的 SQL 语句:

sqlCopy Code
INSERT INTO student (name, age, gender, score) VALUES ('小明', 18, '男', 80); INSERT INTO student (name, age, gender, score) VALUES ('小红', 19, '女', 90); INSERT INTO student (name, age, gender, score) VALUES ('小刚', 20, '男', 85);

插入数据的语法如下:

sqlCopy Code
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);

其中,table_name 表示插入数据的表名称,column1、column2、column3...... 表示要插入数据的字段名,VALUES 子句后面跟随要插入的数据,字段和数据需要一一对应。

结论

使用 SQLite 创建表很简单,只需使用 CREATE TABLE 语句即可。除了表名和字段名外,我们还可以设置数据类型和约束条件等。在实际使用中,我们经常需要插入数据到表中,此时可以使用 INSERT INTO 语句。