4.7.2 删除查询

4.7.2 删除查询

随着数据库的应用,数据表中的数据会越来越多,可能有些数据已过期,需要删除,以减少数据容量,提高操作效率。

对于少量无规律的数据,可直接删除,但大量有规律的数据,如果直接删除,不仅费时,而且易出错,这种情况下应采用“删除查询”。

“删除查询”是在查询中指定相应的删除条件,删除原表中满足条件的指定记录;如果无指定条件,则删除数据表中的全部记录。

删除查询注意事项:

(1)如果只需删除单表中的数据,不需设置表之间的关系;如果需要从多表中删除相关记录,必须定义表关系,同时“在编辑关系”对话框中,选定“实施参照完整性”或“级联删除相关记录”筛选框。

(2)删除记录是永久地,不可逆从指定表中删除满足条件的记录,因此删除之前要慎重,最好先备份数据库或表,再删除。

任务4.15 在“教学信息管理2”数据库中,创建名为“班级删除查询”,功能是:删除“10网络工程1班”班级信息、学生信息和成绩信息。

分析:

该操作涉及3张表记录的删除,“班级表”中删除指定“班级名称”班级记录,导致“学生表”中删除关联班级编号的学生记录,又导致“成绩表”中删除关联学号的成绩记录。3个表属于级联删除,需建立3表之间的关系,并“实施参照完整性”和“级联删除相关记录”。

操作步骤:

(1)打开“教学信息管理2”数据库,单击“创建”选项卡→“查询”组→“查询设计”,打开“查询1”的设计视图,在查询“设计视图”中,添加“班级表”。

(2)添加“班级名称”字段。

(3)单击“查询工具/设计”上下文选项卡→“查询类型”组→“删除”,在字段设计区中添加“删除”行,在“删除”行中,选择“Where”;在“条件”行中输入“10网络工程1班”。如图4-64所示。

图4-64 设计删除查询条件

(4)单击“查询工具/设计”上下文选项卡→“结果”组→“视图”→“数据表视图”,显示查询数据表视图,如图4-65所示,此记录将从“班级表”中删除。

(5)切换到设计视图,单击“查询工具/设计”上下文选项卡→“结果”组→“运行”,弹出“删除记录”提示框。如图4-66所示,单击“是”按钮,导致“班级表”中删除“10网络工程1班”班级信息。

图4-65 查询删除数据

图4-66 “删除记录”提示框

(6)单击“快速访问工具栏”→“保存”按钮,弹出“另存为”对话框,输入查询名称为“班级删除查询”,单击“确定”按钮。

说明:检查“学生表”、“成绩表”,两表中涉及“10网络工程1班”的所有数据一同被删除了,这是因为设置了“级联删除相关记录”的结果。