- 1、本文档共102页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关系数据库标准语言SQL研讨
* 3.6 索引 3.6.1 索引的概念及作用 3.6.2 索引的分类 加快查询速度 保证行的惟一性 聚集索引与非聚集索引 唯一索引 视图索引 聚集索引:查询速度快 非聚集索引:更新速度快 排列的结果存储在表中 只有一个 排列的结果不存储在表中 可以有多个 有UNIQUE,自动建立非聚集的惟一索引 可对频繁使用的视图创建唯一聚集索引, 结果集将直接存储在数据库中。 视图索引 可对频繁使用的视图创建唯一聚集索引, 结果集将直接存储在数据库中。 全文索引 是目前有哪些信誉好的足球投注网站引擎的关键技术之一。在文章 中查找并存储每个词条出现的频率和位置。 唯一索引 有UNIQUE,自动建立非聚集的惟一索引 视图索引 唯一索引 有UNIQUE,自动建立非聚集的惟一索引 XML索引 对xml实例的所有标记、值和路径进行 索引。 * 3.6.3 创建索引 用Management Studio创建索引 用索引创建向导创建索引 直接创建索引 用SQL命令创建索引 CREATE [UNIQUE] [CLUSTERED|NONCLUSTERED] INDEX 索引名 ON 表名 (列名 [次序] [{,列名}] [次序]…) 建立惟一索引 建立聚集索引 或非聚集索引 ASC或DESC,默认为ASC * 【例3-46】 在表orders的cid和gid字段上建立唯一索引。 Create UNIQUE INDEX?o_index1 on orders(cid,gid) 【例3-47】为客户表在cname上建立聚集索引。 Create CLUSTERED INDEX?c_index2 on Customer(cname) 注意: (1)改变表中的数据(如增加或删除记录)时,索引将自动更新。 (2)索引建立后,在查询使用该列时,系统将自动使用索引进行查询。 (3)索引数目无限制,但索引越多,更新数据的速度越慢。对于仅用于查询的表可多建索引,对于数据更新频繁的表则应少建索引。 (4)数据库引擎优化顾问检查指定查询的处理方式。 创建索引的指导原则为: (1)索引主要是用来提高查询效率,若查询操作较少,而数据更新操作较多,则应该较少创建索引,当然具体情况具体分析。 (2)对数据量少的表,无须创建索引。 (3)数据量很大的表,且经常使用某个字段作为查询条件,或经常用该字段进行排序,则可以通过创建索引提高查询速度。 (4)若字段中仅包含几个不同的值,大部分为重复值,则不需创建以上索引。? * 3.6.4 删除索引 用Management Studio删除索引 用DROP INDEX命令删除索引 DROP INDEX数据表名.索引名 【例3-48】 删除orders表上的索引。 Drop index orders.o_index1; 不能删除由CREATE 或ALTER命令创建的索引,也不能删除系统表中的索引 * 3.7 数据控制 权限与角色 权限 角色 角色是多种权限的集合 ,当要为某一用户同时授予或收回多项权限时,则可以把这些权限定义为一个角色 。 这样就简化了管理数据库用户权限的工作。 系统权限 :数据库用户能够对数据库系统进行某种特定的操作的权力 对象权限 :数据库用户在指定的数据库对象上进行某种特定的操作的权力 如:查询、添加、修改和删除 1、授予权限 GRANT权限[,权限] [ON对象类型对象名] TO用户[,用户] [WITH GRANT OPTION] 【例3-49】为用户user1授予create table 的系统权限。 Grant create table to user1 2、收回权限 REVOKE 权限[,权限] [ON对象类型对象名] FROM用户[,用户] 【例3-49】把用户User1的查询orders表和修改osum数据的权限收回。 REVOKE SELECT ,UPDATE(osum) ON orders FROM User1; 【例3-50】收回所有用户对基本表orders的查询权限。 REVOKE SELECT ON orders FROM PUBIC; * 2、多表查询 1、连接查询 连接查询:一个查询需要对多个表进行操作 表之间的连接:连接查询的结果集或结果表 连接字段:数据表之间的联系是通过表的字段值来体现的 连接操作的目的:从多个表中查询数据 表的连接方法 : 表之间满足一定条件的行进行连接时,FROM子句指明进行连接的表名,WHERE子句指明连接的列名及其连接条件 利用关键字JOIN进行连接:当将J
文档评论(0)