问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据库系统概论的一题,加急!高分悬赏!!!

发布网友 发布时间:2022-04-09 21:54

我来回答

3个回答

懂视网 时间:2022-04-10 02:16

 建立索引是加快查询速度的有效手段,用户能够依据应用环境的须要。在基本表上建立一个或者多个索引,以提供多种存取路径,加快查找速度。

一般来说,建立与删除索引由数据库管理员DBA或者表的属主(owner),即建立表的人负责完毕,系统在存取数据时会自己主动选择合适的索引作为存取路径,用户不必也不能显示地选择索引。


2、索引长处和缺点

首先明确为什么创建索引,由于创建索引能够大大提高系统的性能。

  • 通过创建唯一性索引,能够保证数据库表中每一行数据的唯一性。
  • 能够大大加快数据的检索速度,这也是创建索引的最基本的原因。

  • 能够加速表和表之间的连接,特别是在实现数据的參考完整性方面特别有意义。
  • 在使用分组和排序子句进行数据检索时,相同能够显著降低查询中分组和排序的时间。
  • 通过使用索引。能够在查询的过程中。使用优化隐藏器,提高系统的性能。

  • 添加索引有如此多的长处,为什么不正确表中的每个列创建一个索引呢?这样的想法固然有其合理性,然而也有其片面性,尽管索引有很多的长处,可是。为表中的每个列都添加索引,是很不明智的,这是由于,添加索引也有很多不利的一个方面。
  • 创建索引和维护索引要耗费时间。这样的时间随着数据量的添加而添加。
  • 索引须要占物理空间,除了数据表占数据空间之外。每个索引还要占一定的物理空间。假设要建立举聚簇索引,那么须要的空间就会更大。

  • 当对表中的数据进行添加、删除和改动的时候。索引也要动态的维护,这样就减少了数据的维护速度。

  • 索引是建立在数据库表中的某些列上。因此在创建索引的时候,应该细致考虑在哪些列上能够创建索引,在哪些列上不能创建索引,一般来说,应该在这些列上创建索引:
  • 1、在常常须要搜索的列上,能够加快搜索速度 2、在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构。 3、在经经常使用在连接的列上。这些列主要是一些外键,能够加快连接的速度。 4、在常常须要依据范围进行搜索的列上创建索引,由于索引已经排序,其指定的范围是连续的。

    5、在常常须要排序的列上创建索引,由于索引已经排序。这样查询能够利用索引的排序,加快排序查询时间。

    6、在常常使用where子句中的列上面创建索引,加快条件的推断速度。 相同对于有些列是不应该创建索引的。一般来说。不应该创建索引的这些列具有下列特点: 1、对于那些在查询中非常少使用或者參考的列不应该创建索引,这是由于。既然这些列非常少使用到,因此有索引或者无索引,并不能提高查询速度,相反,由于添加了索引,反而减少了系统的维护速度和添加了空间需求。 2、对于那些仅仅有非常少数据值的列也不应该添加索引。这是由于。由于这些列的取值非常少,比方人事表的性别列,在查询的结果中。结果集的数据行占了表中数据行的非常大比例,即须要在表中搜索的数据行的比例非常大。着呢国家索引,并不能明显加快检索速度。

    3、对于那些定义为text、Image和bit数据类型的列不应该添加索引。这是由于,这些列的数据量要么相当大,要么取值非常少。 4、当改动性能远远大于检索性能时,不应该创建索引。这是由于。改动性能和检索性能是互相矛盾的。当添加索引时。会提高检索性能,可是会减少改动性能。当减少索引时。会提高改动性能,减少检索性能,因此,当改动性能远远大于检索性能时,不应该创建索引。 3、创建索引 创建索引有多种方法。这些方法包含直接创建索引方法和间接创建索引的方法,直接创建索引,使用例如以下语句: CREATE [UNIQUE][CLUSTER][INDEX <索引名> ON <表名> (<列名>[<次序>][,<列名>[<次序>]]......)。 说明: 当中<表名>是要创建索引的基本表的名字,索引还能够建立在该表的一列或者多列上,各列之间用逗号分隔,每一个<列名>后面还能够用<次序>指定索引值的排序次序,可选ASC(升序)或者DESC(降序),缺省值为ASC。

    UNIQUE表明此索引的每个索引值值相应唯一的数据记录。

    CLUSTER表示要建立的索引是聚簇索引,所谓聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。 另一种方法创建索引,在表中定义主键约束或者唯一约束时。同一时候也创建了索引,尽管,这两种方法都能够创建索引。可是它们创建索引的详细内容是有差别的:当在表上定义主键或者唯一约束时,假设表中已经有了使用CREATE INDEX语句创建的标准索引的,那么主键约束或者唯一性约束创建的索引覆盖曾经创建的标准索引。也就是说主键约束或者唯一约束创建的索引的优先级高于使用CREATE INDEX语句创建的索引。 eg:为学生-课程数据库中的Student,Course。SC 3个表建立索引,当中Student表按学号升序建唯一索引,Course表按课程号升序建唯一索引,SC表按学号升序和课程号降序建唯一索引。

    CREATE UNIQUE INDEX Stusno ON Student(Sno); CREATE UNIQUE INDEX Coucno ON Course(Cno); CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC);
    4、删除索引 索引一经建立,就有系统使用和维护它,不须要用户的干预,建立索引是为了降低查询操作的时间,但假设数据增删改频繁,系统会花费很多时间来维护索引,从而降低了查询效率。这时能够删除一些不必要的索引。 在SQL中。删除索引使用DROP INDEX 语句,其一般格式为: DROP INDEX <索引名>; eg:删除Student表的Stusname索引 DROP INDEX Stusname; 删除索引时,系统会同一时候删除数据字典中删除有该索引的描写叙述。
    5、总结 在RDBMS中索引一般採用B+树、HASH索引来实现。B+树索引具有动态平衡的长处,HASH索引具有查找速度快的特点,索引是关系数据库的内部实现技术。属于内模式的范畴。 用户使用CREATE INDEX语句定义索引时。能够定义索引是唯一索引、非唯一索引或者聚餐索引。至于某一个索引是採用B+树,还是HASH索引则由详细的RDBMS来决定。

    数据库系统概论-[04]索引

    标签:数据检索   唯一索引   自己   效率   删除   为什么   唯一约束   creat   连接   

    热心网友 时间:2022-04-09 23:24

    1. 用户自定义完整性约束 分为以下四类:
    1 实体完整性:规定表的每一行在表中是惟一的实体。
    2 域完整性: 是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取值范围、精度等规定。
    3 参照完整性: 是指两个表的主关键字和外关键字的数据应一致,保证了表之间的数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。
    4 用户定义的完整性: 不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件,它反映某一具体应用必须满足的语义要求。
    2. 物理独立性
    3. 约束
    4. 数据库备份与恢复
    1)数据库中数据的安全性控制:
    用户标识与鉴别、存取控制、SQL Server 2000中的对象许可和命令许可、用户权限(许可)的授权及收回授权。

    2)数据库中数据的完整性控制。
    实体完整性控制、参照完整性控制、用户定义完整性控制;SQL Server 2000中实施完整性的方法。

    3)数据库中数据的并发性控制。
    事务、事务的特性、锁、锁的粒度、锁的兼容性、死锁、活锁、解决死锁和或锁的办法、批。

    4)数据库中数据的数据库的恢复。
    数据库备份和日志文件、事务故障恢复、系统故障恢复、介质故障恢复。

    5. GRANT
    6. 不知道
    7. 不知
    8. 不知
    9. 权限
    10. 元组关系演算和域关系演算
    11. B
    12. D
    13. D
    14. B
    15. C
    16. B
    17. B
    18. B
    19. C
    20. D

    热心网友 时间:2022-04-10 00:42

    我能帮你做几个`需要的话 hi我
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    个达尔优破鼠标,请问怎么调才玩着顺 智能4k电视哪个牌子好 鼠标连点怎么破 破鼠标简直气死我了 三星4k电视使用一次光纤接口就坏了,怎么办? 破 鼠标!!是不是所有鼠标 只要稍微一接触不良 就停用 必须重起机子呢... 原装三星液晶屏4k惠普电视机多少钱 2015年欧元对换人民币汇率下滑到多少呢 2015年1月下旬欧元兑人民币汇率还能不能上涨 欧元兑换人民币汇率2015年3月份底会回到7吗? 头孢类抗生素分类 头孢菌素抗生素与头孢菌素类药物的区别 有头孢二字的药就是头孢菌素类药物吗? 头孢类药物 2010世博会美国和英国馆的英文简介 第四代头孢菌素类抗生素有哪些 少儿平安福可以退吗 70吨正常运行时炉膛内温度多少 arcgis线构面和绘制面的区别 cube–cube orientation relationship 怎么翻译啊? 如何学习三维重建,请将详细点,谢谢!比如从哪些地方入手,如何快速入门等等。不胜感激。 第一年买保险平安福交6933.59退保只能退700多合适吗 您好!我想问下?房产二次抵押给平安银行!签约去市房产局还是镇房产 向平安银行做二次抵押需什么资料 平安银行可以房屋二次贷款吗 怎样在平安银行办理房产二次抵压贷款 苹果5死机之后开不了机怎么办? 苹果5手机卡机黑屏怎么办 如果一个女生有男朋友但是还爱着前任男友该怎么办? 即使有了很好的现任有一些人还总会怀念很坏的前任,这是为什么? 相同工龄的二级主任科员与一级主任科员2020年退休工资差多少 姜文眼镜是什么牌子的? 姜文戴的什么牌子的眼镜 有话好好说电影里姜文戴的什么眼镜? 让子弹飞中葛优八岁孩子片段什么意思 韩国打扑克什么意思 晚上可以吃黄桃不 《让子弹飞》演员有哪些? 和QQ号就是财付通账号吗?财付通账号怎么查询? 经常晚上吃水果好嘛 像黄桃 苹果 芒果之类的 TVB监制想不到角色名,“晶晶”用了八次,网友对此是怎样的反应? 减肥期间晚上可以吃黄桃罐头吗? 刘思达的学术成果 微信钱包和qq钱包都是属于财付通吗 每天晚上吃一瓶黄桃罐头好吗 姜文戴眼镜是因为近视眼吗? 减肥期间晚上吃了黄桃和葡萄有影响吗 紧急求助 论文摘要翻译成英文 财付通是微信的还是QQ的 姜文什么时候开拍 《让子弹飞3》 大家知道为什么是飞3、不是飞2