介绍
在本次挑战中,你将构建一个用于存储客户联系信息的 SQLite 数据库。目标是在位于 ~/project 目录下的 customers.db 数据库中设计并创建一张 customers 表。
你需要为 id(INTEGER PRIMARY KEY)、name(TEXT)和 email(TEXT)定义列,并确保 email 列具有 UNIQUE(唯一)约束,以防止出现重复的电子邮件地址。本次挑战涉及使用 sqlite3 终端执行 SQL 命令(特别是 CREATE TABLE 语句),并使用 .schema customers 命令验证表结构。
构建联系人 SQLite 数据库
设计一个用于存储客户信息的数据库表。
任务
- 在
customers.db数据库中创建一张名为customers的表,包含id、name和email列。其中id列应为主键。 - 为
customers表中的email列添加UNIQUE约束,以确保每个客户都有唯一的电子邮件地址。
要求
- 连接到位于
~/project目录下的 SQLite 数据库customers.db。 - 使用
CREATE TABLE语句创建customers表。 id列必须是INTEGER类型且为PRIMARY KEY(主键)。name和email列必须是TEXT类型。- 在
email列上实现UNIQUE约束。 - 所有 SQL 命令必须在
sqlite3终端内执行。
示例
成功创建表后,执行 PRAGMA table_info(customers); 命令应输出:
0|id|INTEGER|0||1
1|name|TEXT|0||0
2|email|TEXT|0||0
提示
- 使用
sqlite3命令连接数据库:sqlite3 customers.db。 CREATE TABLE语句用于创建新表。PRIMARY KEY约束确保id列能唯一标识每一行。UNIQUE约束确保email列中的所有值都是互不相同的。- 使用
.schema customers来验证表结构。
总结
在本次挑战中,你创建了一个名为 customers.db 的 SQLite 数据库用于存储客户信息。任务涉及设计并实现一张 customers 表,其中包含 id(INTEGER PRIMARY KEY)、name(TEXT)和 email(TEXT)列。
核心学习点在于约束的应用,特别是将 id 列设置为主键,并通过 UNIQUE 约束强制要求 email 列的唯一性。最后使用 .schema customers 命令验证了表的成功创建及其结构。


