实验6.1 实体完整性
【实验目的】
①掌握使用图形界面工具创建主键。
②掌握使用SQL创建主键。
③掌握使用图形界面工具创建UNIQUE约束。
④掌握使用SQL创建UNIQUE约束。
【实验内容】
①使用图形界面工具为sales数据库中的customers表和products表创建主键。
②使用SQL为sales数据库中的agents表和orders表创建主键。
③使用图形界面工具为sales数据库中的products表创建UNIQUE约束。
④使用SQL为sales数据库中的orders表创建UNIQUE约束。
【实验步骤】
(1)使用图形界面工具创建主键
为sales数据库中的customers表和products表创建主键。
①启动 MySQL Workbench。单击“MySQL Workbench”,显示工作的主界面,单击“local instance MySQL”,连接服务器。
②在“Navigator”导航栏的“Schemas”选项页中依次单击“sales”→“Tables”,右击“customers”,在快捷菜单中选择“Alter Table...”选项,如图6.1所示。

图6.1 快捷菜单
③创建主键。在customer表结构设置界面选择cid列,单击工具栏中对应“PK”的方框按钮,或者选中下方的“Primary Key”,在cid列左侧显示一把钥匙,如图6.2所示,表示cid被设置为主键。

图6.2 设置主键后的显示结果
④单击“Apply”按钮,保存修改后的customers表。主键约束创建完毕之后,可以在导航栏中查看,如图6.3所示。

图6.3 导航栏中查看主键
⑤按照步骤②—④的顺序给products表创建主键。
(2)使用SQL创建主键
为sales数据库中的agents表和orders表创建主键。
①在图标菜单中单击第一个图标
,新建一个查询窗口。
②在查询窗口输入下面的SQL语句:
ALTER TABLE Orders
ADD PRIMARY KEY (ordno);(https://www.daowen.com)
③单击工具栏中的
图标或者按下快捷键“Ctrl+Enter”,执行上面的SQL语句,结果如图6.4所示,表示已成功设置主键。可以在导航栏中查看,如图6.5所示。如果未显示主键,在“orders”表中右击鼠标,在显示的快捷菜单中选择“refresh all”,再次查看。

图6.4 创建主键的执行结果

图6.5 导航栏中查看主键
④如果执行该语句时,出现图6.6所示的错误提示信息,说明orders表已经有主键,一个表只能有一个主键,试图再创建主键,导致语句执行失败。在导航栏中查看,如果已有主键,可不再执行该语句,或者删除原主键后再执行。

图6.6 创建主键语句未成功执行
⑤参照前面4步给agents表创建主键。
(3)使用图形界面工具创建UNIQUE约束
为sales数据库中的products表创建UNIQUE约束。
①在“Navigator”导航栏的“Schemas”选项页中依次展开节点“sales”→“Tables”,右击“products”,在快捷菜单中选择“Alter Table...”选项,在查询窗口中显示表的结构。
②创建UNIQUE约束。选择pid列,单击工具栏中对应“UQ”的方框按钮,或者选中下方的“Unique”方框。
③单击“Apply”按钮,即可保存修改后的products表。
(4)使用SQL创建UNIQUE约束
为sales数据库中的orders表创建UNIQUE约束。
①在图标菜单中单击第一个图标
,新建一个查询窗口。
②在查询窗口输入下面的SQL语句:
ALTER TABLE Orders
ADD UNIQUE(ordno);
③单击工具栏中的
图标或者按下快捷键“Ctrl+Enter”,执行上面的SQL语句,结果如图6.7所示,表示已成功为sales数据库中的orders表创建UNIQUE约束。

图6.7 创建UNIQUE约束的执行结果