SQLite 建表

2024年10月13日 SQLite 建表 极客笔记

SQLite 建表

SQLite是一个轻量级的嵌入式关系型数据库,它不像MySQL或者Oracle那样需要独立的服务器来运行,而是直接嵌入到应用程序中,适合用于移动设备或者小型应用程序的开发。在SQLite中,我们需要通过建表的方式来定义数据库中的数据结构,下面将详细介绍如何在SQLite中建表。

创建数据库

在SQLite中,要创建一个新的数据库,我们需要使用sqlite3命令来打开一个新的数据库文件。例如,我们可以通过以下命令打开一个名为test.db的数据库文件:

sqlite3 test.db

执行以上命令后,将会打开一个交互式的SQLite命令行界面,我们可以在这个界面中执行SQL语句来操作数据库。

建表语法

在SQLite中,要创建一个新的表,我们需要使用CREATE TABLE语句,表的结构由列的名称和数据类型组成。下面是一个简单的示例:

CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    name TEXT,
    age INTEGER
);

以上SQL语句创建了一个名为users的表,表中包含id、name和age三列。其中id列是主键,并且是自增的,name列的数据类型是TEXT,age列的数据类型是INTEGER。

数据类型

SQLite支持多种数据类型,常用的数据类型包括:

  • INTEGER:整数类型,可选的大小参数可以限制整数的范围。
  • REAL:浮点数类型,用于存储实数。
  • TEXT:文本类型,用于存储字符串。
  • BLOB:二进制大对象类型,用于存储二进制数据。

主键约束

在SQLite中,主键用于确保表中的每一行都有一个唯一的标识符。在建表时,可以使用PRIMARY KEY约束来指定某一列作为主键。如果没有指定PRIMARY KEY,那么SQLite将会自动创建一个名为rowid的隐藏列作为主键。

外键约束

SQLite支持外键约束,用于确保两个表之间的关系完整性。在建表时,可以使用FOREIGN KEY约束来定义外键。例如,以下SQL语句创建了一个orders表和一个users表,orders表中有一个user_id列用来关联users表的id列:

CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    name TEXT
);

CREATE TABLE orders (
    id INTEGER PRIMARY KEY,
    user_id INTEGER,
    amount REAL,
    FOREIGN KEY (user_id) REFERENCES users(id)
);

在上面的示例中,user_id列在orders表中定义为外键,通过FOREIGN KEY约束关联到users表的id列。

示例代码

下面是一个完整的示例代码,演示了如何在SQLite中建表,并插入一些数据:

CREATE TABLE students (
    id INTEGER PRIMARY KEY,
    name TEXT,
    age INTEGER
);

INSERT INTO students (name, age) VALUES ('Alice', 20);
INSERT INTO students (name, age) VALUES ('Bob', 22);
INSERT INTO students (name, age) VALUES ('Charlie', 21);

SELECT * FROM students;

执行以上代码后,将会创建一个名为students的表,并向表中插入三条数据,然后查询并输出表中的所有数据。

运行结果

执行上面的示例代码后,将会得到如下运行结果:

1|Alice|20
2|Bob|22
3|Charlie|21

本文链接:http://so.lmcjl.com/news/15277/

展开阅读全文