简介
在本挑战中,你将构建一个用于存储客户联系信息的 SQLite 数据库。目标是在位于 ~/project 目录中的 customers.db 数据库内设计并创建一个 customers 表。
你需要为 id(INTEGER PRIMARY KEY)、name(TEXT)和 email(TEXT)定义列,并确保 email 列具有 UNIQUE 约束,以防止电子邮件地址重复。本挑战要求使用 sqlite3 shell 执行 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 命令都必须在
sqlite3shell 中执行。
示例
成功创建表后,执行 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 命令验证了表是否成功创建及其结构是否正确。


