SQL初学者必备:70-431考试试题与解答

需积分: 10 1 下载量 37 浏览量 更新于2024-09-29 收藏 70KB TXT 举报
"SQL初步认证试题及答案" 这篇资源提供了SQL认证考试的相关试题与答案,主要涉及SQL Server 2000和SQL Server 2005的数据迁移、参照完整性和视图索引等概念。 在第一题中,讨论的是在数据迁移过程中如何处理参照完整性。题目描述了一个场景,你需要从SQL Server 2000的客户表和国别表中导入数据到SQL Server 2005,同时确保客户表中的国家代码在新数据库的国别表中存在。选项A提到删除外键,导入数据后再重建,但这可能会导致数据丢失或引用错误。选项B建议创建一个CHECK约束,但这只能检查单个表内的数据,无法实现跨表的参照完整性。选项C提出创建DML INSTEAD OF 触发器,这种触发器可以在插入数据时替代默认的操作,如果国家代码不存在,触发器可以捕获错误并记录,允许导入过程继续进行。而选项D是AFTER触发器,这类触发器在操作执行后触发,此时数据已经插入,无法阻止错误发生。因此,正确答案是C,使用INSTEAD OF触发器来处理这种情况。 第二题涉及创建视图及其索引。题目给出了一个名为Customers的表,并展示了它的列定义,其中包括一个最大长度为max的二进制列Picture。然后创建了一个名为v_Customer的视图,选择了CustomerID, CompanyName, FirstName, LastName和Picture这五列。创建视图的索引需要特别注意,因为包含大型二进制对象(BLOB)的列通常不建议用于索引,因为它们会显著增加索引的存储需求,影响性能。因此,要在视图上创建索引,可能需要做两件事:一是选择不包含大型二进制列的列,二是考虑使用覆盖索引,即索引包含视图所需的所有数据,从而避免对基表的额外查询。因此,正确的举措可能包括选择不包含Picture列(避免大型二进制列)以及确保索引包含所有需要的列(创建覆盖索引)。根据这个理解,需要修改创建视图的Transact-SQL语句,移除Picture列,并确保索引能覆盖所有查询所需的信息。 这份资源涵盖了SQL数据库管理的关键概念,如数据迁移的参照完整性策略和视图索引的优化,对于准备SQL认证考试的人来说非常有价值。通过解答这些问题,学习者可以加深对这些核心概念的理解,并提升在实际操作中的应用能力。