MSSQL网页编程之SQL循规蹈矩(18)索引
闪回的目的是要让数据库在commit之后,还能恢复到之前的某个状态,整库或指定的表。索引索引同意DBMS更快地会见数据。体系创立了这个外部地数据布局(即索引),它招致当查询以列为索引的时分搜刮行,如许查询会快很多。这个索引关于给定列索引数值的时关照DBMS找到表中某一行,这有点象书的索引,它告知你关于给定的字你能找到哪一页。上面让我们在AntiqueOwners列中为OwnerID创立索引:
CREATEINDEXOID_IDXONANTIQUEOWNERS(OWNERID);
上面语句是为名字创立以是:
CREATEINDEXNAME_IDXONANTIQUEOWNERS(OWNERLASTNAME,OWNERFIRSTNAME);
为了删除索引,你能够使用DROP:
DROPINDEXOID_IDX;
就象后面教程中,我们也能够"drop"(删除)一个表。下面第二个例子中,是在两列上创立索引的。
有些DBMS不强制请求主键,换句话说就是,类的独一性不会主动强迫。这是甚么意义呢,好象听起来云里雾里的。好吧,再给你举个例子,假如你象拔出别的一行到AntiqueOwners表中,好比这个OwnerID是02,有些体系可让你如许做即便我们请求一切行的数值都如果分歧的。为了不两行有不异的值,我们有一种办法来克制,就是在列上创立独一的索引,而在这个列上我们必要它成为主键,如许就能够体系不会呈现复制的情形:
CREATEUNIQUEINDEXOID_IDXONANTIQUEOWNERS(OWNERID);
MySQL最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。经过一些测试后,开发者得出结论:mSQL并没有他们需要的那么快和灵活。 比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。 如果你是从“学习某一种数据库应用软件,从而获得应聘的资本和工作机会”的角度来问的话。 如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。 如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。 having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。 我们学到了什么?思考问题的时候从表的角度来思考问 sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西 如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。
页:
[1]