摘要: 对于MS SQL server 数据库,有几个容易让人产生误解的问题,对于这几个问题,即使很多 SQL server DBA 都有错误认识或者认识不充分,所以我想撰文几篇,把这些容易理解错误的问题前前后后深入阐述一下,也希望纠正一下网上对这几个问题的讹传(我也可能有认识不对的地方,欢迎批评指正)。 ... 阅读全文
posted @ 2015-08-31 16:46 雍洲无名 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 一:delete操作 现在我们已经知道,索引都是以B树的形式存在的,既然是B树,我们就要看看他们的叶子节点和分支结点,先准备点测试数据,如下图:按 Ctrl+C 复制代码按 Ctrl+C 复制代码 叶子结点的变化 从上面的图中大概可以看到,当我插入完毕后,现在有4个索引数据页,其中PID=200... 阅读全文
posted @ 2015-08-31 14:49 雍洲无名 阅读(770) 评论(0) 推荐(0) 编辑
摘要: 1.查询表中的RIDRID=RowID=(fileID:pageID:slotID)SELECT sys.fn_PhysLocFormatter(%%physloc%%) AS rid,* FROM person2.开启DBCC命令语法--开启DBCC TRACEON(2588)--帮助命令DBCC... 阅读全文
posted @ 2015-08-31 10:45 雍洲无名 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 一:现象1:无索引的情况 还是老规矩,看个例子感受下,首先我有一个Product表,里面没有任何索引,如下图:从上图中,我悲剧的看到了,物理读是9次,也就说明走了9次硬盘,你也可以想到,走硬盘的目的是为了拿数据,逻辑读有1636次,要注意的是这里的”次“是“页”的意思,也就是在内存中走了1636个... 阅读全文
posted @ 2015-08-31 10:30 雍洲无名 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 一:表扫描1.现象 ”表扫描“听起来很简单,不就是一行一行的扫嘛,你要说”执行计划”的话,我也会玩,为了更可观,我build一个表,再插入三行数据,如下图:上面的Person我是一个索引都没建,然后where一下,看看表扫描是啥样的???果然是看到了万恶的“表扫描”三个字,既然是万恶的东西,我们一... 阅读全文
posted @ 2015-08-31 09:12 雍洲无名 阅读(191) 评论(0) 推荐(0) 编辑