观察者模式(Observer) 定义 定义了一种一堆多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。 UML类图 成员角色 抽象主题(Subject)角色:抽象主题角色把所有对观察者对象的引用保存在一个聚集(比如Arr ...
分类:
其他好文 时间:
2016-06-23 21:58:19
阅读次数:
169
对于数据获取,如果查询优化器在执行计划里选择了索引,那么SQL Server里的每个索引可以提高你的查询性能。但在另一方面,每个索引也会伤及你的性能,因为在INSERT,UPDATE和DELETE期间,每个索引需要被维护。因此对于你的工作量,尽可能创建少的索引非常重要——不然在写操作期间,你会有巨大 ...
分类:
其他好文 时间:
2016-06-21 17:50:24
阅读次数:
185
1、主键必须是唯一性的,不一定就是聚集索引,我们在创建主键时默认是设主键为聚集索引。可通过手动删除后重新建聚集索引。 2、sql语句是where先执行,然后再执行order by,所以我们在建非聚集索引时要注意顺序并且where与order by里面的列都要在索引键列里面。select部份可以放在包 ...
分类:
其他好文 时间:
2016-06-21 15:43:25
阅读次数:
839
很多刚入门的DBA在捕获阻塞得时候,会问这么一个问题“为什么这个SELECT语句被那个SELECT语句阻塞了,难道不是共享锁么?” 让我们来做个小测试,首先准备一些测试数据: 注意上面创建的表中RID是唯一聚集索引,因此如果我们按照RID来进行更新或查询,会加行锁。 首先开启一个事务来修改数据: 然 ...
分类:
其他好文 时间:
2016-06-17 19:29:24
阅读次数:
134
SqlServer2005以上版本提供了开窗排序和开窗聚集函数。 通过rank()和row_number()两个函数开窗排序。 rank()函数排列相同生成相同的排序,下一个不同排列排序将跳开,比如生成1 ,1,3。 row_number()函数即使排列相同也生成不同的排序,比如1,2,3。 ove ...
分类:
数据库 时间:
2016-06-17 00:41:46
阅读次数:
176
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SQL查询的基本结构 集合运算 空值 聚集函数 嵌套子查询 数据库的修改 ~~~~~~~~~~~~~~~ ...
分类:
数据库 时间:
2016-06-16 09:13:17
阅读次数:
311
目的:我们经常需要汇总数据而不是把它们实际检索出来,例如确定表的行数,某些列的总和,某些列的最值等。此时检索所有数据只能是浪费时间和系统资源。 第一部分:SQL给出了5个聚集函数,聚集函数是指对某些行运行的函数,计算并返回一个值。 1.AVG() 输出: 注意:(1)AVG()只能用来确定特定数值列 ...
分类:
数据库 时间:
2016-06-12 21:50:08
阅读次数:
297
聚簇索引:表数据按照索引的顺序来存储的,也就是说索引项的顺序与表中记录的物理顺序一致。对于聚簇索引,叶子结点即存储了真实的数据行,不再有另外单独的数据页。在一张表上最多只能创建一个聚簇索引,因为真实数据的物理顺序只能有一种,查找到索引就是查找到数据,所以速度快..
分类:
其他好文 时间:
2016-06-08 17:15:06
阅读次数:
194
MVC框架 同义词 MVC模式一般指MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界 ...
分类:
Web程序 时间:
2016-06-07 22:21:58
阅读次数:
249
MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻 ...
分类:
Web程序 时间:
2016-06-06 13:41:24
阅读次数:
218