SQL Server 2005数据库迁移与视图优化:70-431考试实战

4星 · 超过85%的资源 需积分: 44 10 下载量 78 浏览量 更新于2024-12-21 收藏 1.03MB PDF 举报
SQL Server 2005数据库开发与实现模拟题涵盖了两个关键知识点,分别是数据迁移与引用完整性以及视图设计与索引创建。 1. 数据迁移与引用完整性保障: 题目要求在将SQL Server 2000数据库中的客户数据导入到SQL Server 2005时,保持国家代码列的参照完整性。在SQL Server 2005中,为了确保这样的迁移不会因为国家代码值缺失而导致导入失败,应该创建一个DML (Data Manipulation Language) INSTEAD OF触发器。这个触发器会在尝试插入或更新数据时检查国家代码是否存在,如果不存在则记录错误并阻止操作,而不是简单地失败。因此,正确答案是C,创建一个DML INSTEAD OF触发器,这可以灵活处理错误情况,允许在必要时采取其他措施。 2. 视图设计与索引创建: 另一个问题是关于在SQL Server 2005中创建视图v_Customer。题目中提到的视图仅包含了CustomerID、CompanyName、FirstName、LastName和Picture这些列,但Picture列使用的是Varbinary(max)类型,可能不适合索引。因为Varbinary(max)通常用于存储二进制数据,如图片,它的大小不确定,不太适合索引性能。因此,为了创建索引,可能需要考虑以下两个选项: A. 考虑将Picture列更改为image类型,虽然这可能不是最佳实践,但在某些情况下可能有助于减少索引大小和提高查询性能。 B. 包含WITH SCHEMABINDING语句,这是一个可选的特性,当使用视图时可以强制查询编译时绑定到视图的定义,防止动态SQL改变视图结构对索引造成影响。 正确的做法应该是B,加上WITH SCHEMABINDING,因为索引性能主要受列的数据类型和选择列的影响,而非数据类型转换。至于A选项,是否真的需要改类型取决于具体的应用场景和查询需求。 总结,这两个问题展示了SQL Server 2005中数据迁移的策略选择和视图设计优化的关键要素,对于准备70-431考试的人来说,理解并掌握这些概念至关重要。