sql学习资料笔记参考.doc

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
sql学习资料笔记参考

创建视图和索引 视图常常被称为虚表。在视图被创建以后,你可以对视图采用如下命令:select,insert, update,delete。 索引是与磁盘上数据的存储方式不同的另外一种组织数据的方法。 使用视图 视图并不占用数据库或表的物理空间。 创建视图的语法如下: CREATE VIEW view_name [(col1,col2...)] AS SELECT col_names FROM table_names; 视图可以是多级的,也就是可以用视图来创建视图。但这会加大维护工作的复杂性。 1。列的重命名 注意: 当在视图中使用SQL的计算功能时,SQL会要求你给出一个虚字段的名字,这是可以理解,因为象 COUNT(*)或AVG(PAYMENT)是不能作为列名的。 2。SQL对视图的处理过程 运行SELECT语句--查找表--未找到--查找视图。 3。在SELECT语句中的使用约束 在视图的SELECT语句中: 不能使用UNION操作。 不能使用ORDER BY子句,但在视图中,使用GROUP BY子句可以有ORDER BY子句相同的功能。 4。在视图中修改数据 在视图创建以后,就可以用Insert,Update,Delete语句来更新,插入,删除视图中的数据。 5。在视图中修改数据的几个问题 对于多表视图,不能使用DELETE语句。 除非底层表的所有非空列都已经在视图中出现,否则,你不能使用Insert语句。有这个限制的原 因是SQL不知道该将什么数据插入到NOT NULL限制列中(没有在视图中出现的)。 如果对一个归并的表格插入或更新记录,那么所有被更新的记录必须属于同一个物理表。 如果你在创建视图时使用了DISTINCT语句,那么你就不能插入或更新这个视图中的记录。 你不能更新视图中的虚拟列(它是用计算字段得到的)。 6。通用应用程序的视图 下面有几个视图需要完成的任务: 提供了用户安全功能。 可以进行单位换算。 创建一个新的虚拟表格。 简单的结构化复合查询。 --视图与安全性 --在单位换算中使用视图 --在视图中使用简单的结构化复合查询 7。删除视图的语句 DROP VIEW view_name; 注意:该命令会使所有与DROP掉的视图相关联的视图不能正常运行。一些数据库系统甚至会将所有 与DROP掉的视图相关联的视图也删除掉。 使用索引 在SQL中使用索引有以下几个原因: 在使用UNIQUE关键字时强制性地保证数据的完整性。 可以容易地使用索引字段或其他字段进行排序。 提高查询的执行速度。 1。什么是索引 创建索引的语法: CREATE INDEX index_name ON table_name(col1[,col2...]); 注意:在不同的数据库系统中,创建索引的语法差别很大。 删除索引的语法: DROP INDEX index_name; 备注:当表被删除时,所有与表相关的索引也将被删除。 2。使用索引的技巧 对于小表来说,使用索引对于性能不会有任何提高。 当你的索引中有极多不同的数据和空值时,索引会使性能有极大的提高。 当查询返回的数据很少时,索引可以优化你的查询(比较好的情况是少于全部数据的25%)。如 果要返回的数据很多时,索引会加大系统开销。 索引会提高数据的返回速度,但是它使数据的更新速度变慢。如果要进行大量的更新操作,请先 删除索引,在执行完更新操作后,再恢复索引。 索引会占用你的数据库空间,在设计数据库的可用空间时要考虑到。 如果对字段的索引已经对两个表进行了归并操作,这一技术可以极大地提高归并的速度。 大多数数据库系统不允许对视图创建索引。 不要对经常需要更新或修改的字段创建索引,更新索引的开销会降低你所期望获得的性能。 不要将索引和表存储在同一个驱动器上,分开存储会去掉访问的冲突,从而使结果返回的更快。 3。对更多的字段进行索引 这也叫复合索引。 4。在创建索引时使用UNIQUE关键字 复合索引通常使用UNIQUE关键字来防止有相同数据的多个记录多次出现。 在创建索引时,可以使用DESC关键字。 5。索引与归并 在归并查询中,对表中唯一属性的字段或用以归并操作的字段创建索引,可以大大比高归并的效率 。 6。群集(簇)的使用 当使用群集索引时,数据的表中的物理排列方式将会被修改。使用群集索引通常比传统的不使用群 集的索引速度要快。 许多数据库系统(如Sybase的SQL Server)只允许一个表有一个群集索引。 用于创建群集索引的字段常常是主关键字。 用Sybase的Transact-SQL创建群集索引的例子: CREATE UNIQUE CLUSTERED INDEX id_index O

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档