SQLite 数据库非常轻量级。与其他数据库系统不同,开始使用 SQLite 数据库时无需配置和安装。
您需要的是小于 500KB 的 SQLite 库。我们将直接开始使用 SQLite 数据库和表格。
SQLite 创建数据库
与其他数据库管理系统不同,SQLite 中没有 CREATE DATABASE 命令。在 SQLite 中,以下是创建新数据库的方法:
- 从开始菜单打开 Windows 命令行工具 (cmd.exe),键入
cmd并打开它。 cmd将在默认的用户文件夹中打开,在我的机器上是C:\Users\sean>:

- 通过安装和软件包教程,您现在应该已经在
E目录下创建了一个SQLite文件夹,并复制了sqlite3.exe文件。 - 然后,我们应通过以下命令导航到
sqlite3.exe所在的位置:

- 然后键入以下命令
sqlite3 SchoolDB.db - 这将在复制
.exe文件的同一目录下创建一个新数据库,名称为SchoolDB.db。

- 如果您导航到
e:\sqlite目录 你会发现文件 “ SchoolDB.db ”** 已创建,如下面的屏幕截图所示:

- 编写以下命令可确保数据库已创建:
.databases这将显示已创建的数据库列表,其中应列出新数据库SchoolDB.db:

SQLite在特定位置创建数据库:
如果想在特定位置而不是 sqlite3.exe 所在的同一位置创建数据库文件,可以这样做:
- 手动导航到 sqlite3.exe 所在文件夹 “E:\sqlite”.

-
双击 sqlite3.exe 打开命令行。
-
运行以下命令
sqlite
.open c:/users/mga/desktop/SchoolDB.db
- 这将创建一个名称为
SchoolDB.db的新数据库,并将数据库文件存储在指定的位置。 请注意,如果数据库文件已经创建,将使用相同的命令打开数据库文件。因此,如果再次编写完全相同的命令,就会打开数据库本身
sqlite
.open c:/users/mga/desktop/SchoolDB.db
- SQLite 将检查文件名
SchoolDB.db是否在同一位置。如果文件存在,将打开它。否则,将在指定位置以指定的相同文件名创建一个新数据库。
SQLite 创建数据库并用文件中的表填充它
如果您有一个包含表模式的 .SQL 文件,并且想用该文件中的表创建一个新数据库,我们将在下面的示例中介绍如何操作。
示例
在下面的示例中,我们将创建示例数据库。我们将在整个 SQLite 教程中使用该示例数据库,其名称为 SQLiteTutorialsDB,并在其中填充表。如下所示:
- 打开一个文本文件并粘贴以下命令:
CREATE TABLE [Departments] (
[DepartmentId] INTEGER NOT NULL PRIMARY KEY,
[DepartmentName] NVARCHAR(50) NOT NULL
);
CREATE TABLE [Students] (
[StudentId] INTEGER PRIMARY KEY NOT NULL,
[StudentName] NVARCHAR(50) NOT NULL,
[DepartmentId] INTEGER NULL,
[DateOfBirth] DATE NULL
);
CREATE TABLE [Subjects] (
[SubjectId] INTEGER NOT NULL PRIMARY KEY,
[SubjectName] NVARCHAR(50) NOT NULL
);
CREATE TABLE [Marks] (
[StudentId] INTEGER NOT NULL,
[SubjectId] INTEGER NOT NULL,
[Mark] INTEGER NULL
);
上述代码将创建以下四个表格:
-
"Departments" 表中有以下几列:
-
" DepartmentId " 是一个整数,表示部门 ID,并声明为 PRIMARY KEY(稍后在 “列约束 ”部分进行解释)。
-
" DepartmentName " – 是部门的字符串名称,使用 NOT NULL 约束时不允许使用空值。
-
" Students " 表中有以下几列:
-
" StudentId " 是一个整数,并声明为 PRIMARY KEY。
- " StudentName " – 学生姓名,并且使用 NOT NULL 约束不允许使用空值。
- " DepartmentId " 整数,指部门表中部门 id 列的部门 Id。
-
" DateOfBirth " 学生的出生日期。
-
" Subjects " 表中有以下几列:
-
" SubjectId " 是一个整数,并声明为 PRIMARY KEY。
-
" SubjectName " 字符串值,而且不允许使用空值。
-
"Marks" 表中有以下几列:
-
" StudentId " 整数表示学生编号。
- " SubjectId " 整数表示主题 ID。
-
" Mark " 它也是整数,并且允许空值。
-
将文件保存到 SQLite,文件名为
SQLiteTutorialsDB.sql,保存在sqlite3.exe所在的相同位置。 -
打开
cmd.exe,并导航到sqlite3.exe所在的目录。 -
编写以下命令
sqlite
sqlite3 SQLiteTutorialsDB.db < SQLiteTutorialsDB.sql
- 然后,应创建一个新数据库
SQLiteTutorialsDB,文件SQLiteTutorialsDB.db将位于同一目录下。如下所示:

- 您可以像这样打开我们刚刚创建的数据库,以确保创建了该表:
sqlite
.open SQLiteTutorialsDB.db
- 然后编写以下命令
sqlite
.tables
- 该命令将显示
SQLiteTutorialsDB中的表列表,你应该能看到我们刚刚创建的四个表:

SQLite 备份和数据库
要备份数据库,必须先打开该数据库,如下所示:
-
导航到 “ E:\sqlite ” 文件夹,然后双击 sqlite3.exe 打开它。
-
使用以下命令打开数据库
sqlite
.open e:/sqlite/sample/SchoolDB.db
该命令将打开位于以下目录的数据库 “e:/sqlite/sample/”
- 如果它与
sqlite3.exe位于同一目录下,则无需指定位置,就像这样:
sqlite
.open SchoolDB.db
-
然后编写以下命令来备份数据库:
-
这将把整个数据库备份到同一目录下的新文件
SchoolDB.db中:
sqlite
.backup SchoolDB.db
- 如果执行该命令后未出现任何错误,则表示备份已成功创建。
### SQLite Drop 数据库
与其他数据库管理系统不同,SQLite 中没有 DROP DATABASE 命令。如果要删除数据库,只需删除数据库文件即可。
注意:
-
不能在同一位置创建两个名称相同的数据库,数据库名称在同一目录下是唯一的。
-
数据库名称不区分大小写。
-
创建数据库不需要权限。