柠檬试题库
search
首页 计算机 公务员 驾照 关于

在SQL Server 2008中,常常会发生数据库数据过大的情况,此时则需要对表进行处理,通常可采用人工分割表的方法优化性能。下列有关分割表的说法,错误的是()


  • A.水平分割后,得到的子表结构相同
  • B.水平分割后,查询表中所有数据时需要使用JOIN操作
  • C.垂直分割后,所有表中均需保留原有表的主码
  • D.当查询表中所有数据时,使用分割表方法会增加查询表达式的复杂度
热度🔥286
参考答案:B
解析:

分割表增加了维护数据完整性的代价。 分割表分为水平分割表和垂直分割表两种。水平分割表:一种是当多个过程频繁访问数据表的不同行时,水平分割表,并消除新表中的冗余数据列;另一种是当主要过程要重复访问部分行时,最好将被重复访问的这些行单独形成子集表(冗余储存),这在不考虑磁盘空间开销时显得十分重要,但在分割表以后,增加了维护难度,要用触发器立即更新、或用存储过程及应用代码批量更新,这也会增加额外的磁盘I/O开销。 垂直分割表(不破坏第三范式):一种是当多个过程频繁访问表的不同列时,可将表垂直分成几个表,减少磁盘I/O(每行的数据列少,每页存的数据行就多,相应占用的页就少),更新时不必考虑锁,没有冗余数据。缺点是在插入或删除数据时要考虑数据的完整性,用存储过程维护。另一种是当主要过程反复访问部分列时,最好将这部分被频繁访问的列数据单独存为一个子集表(冗余储存),这在不考虑磁盘空间开销时显得十分重要,但因此增加了重叠列的维护难度,要用触发器立即更新、或用存储过程及应用代码批量更新,这也会增加额外的磁盘I/O开销。垂直分割表可以达到最大化利用Cache的目的。 水平分割后,查询数据需要使用UNION操作。垂直分割后,查询数据需要JOIN操作。
复制题目向AI提问


扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐 下列 VBA 变量名中,正确的是 以下哪个是程序实现的正确过程       销售部助理小王需要针对2012年和2013年的公司产品销售情况进行统计分析,以便制订新的销售计划和工作任务。现在,请按照如下需求完成工作:1.打开“Excel_素材.xlsx”文件,将其另存为“Excel.xlsx”,之后所有的操作均在“Excel.xlsx”文件中进行。2.在“订单明细”工作表中,删除订单编号重复的记录(保留第一次出现的那条记录),但须保持原订单明细的记录顺序。3.在“订单明细”工作表的“单价”列中,利用VLOOKUP公式计算并填写相对应图书的单价金额。图书名称与图书单价的对应关系可参考工作表“图书定价”。4.如果每订单的图书销量超过40本(含40本),则按照图书单价的9.3折进行销售;否则按照图书单价的原价进行销售。按照此规则,计算并填写“订单明细”工作表中每笔订单的“销售额小计”,保留2位小数。要求该工作表中的金额以显示精度参与后续的统计计算。5.根据“订单明细”工作表的“发货地址”列信息,并参考“城市对照”工作表中省市与销售区域的对应关系,计算并填写“订单明细”工作表中每笔订单的“所属区域”。6.根据“订单明细”工作表中的销售记录,分别创建名为“北区”、“南区”、“西区”和“东区”的工作表,这4个工作表中分别统计本销售区域各类图书的累计销售金额,统计格式请参考“Excel_素材.xlsx”文件中的“统计样例”工作表。将这4个工作表中的金额设置为带千分位的、保留两位小数的数值格式。7.在“统计报告”工作表中,分别根据“统计项目”列的描述,计算并填写所对应的“统计数据”单元格中的信息。