
MSSQL
文章平均质量分 63
wangjunhe
这个作者很懒,什么都没留下…
展开
-
Create Index语句的Include作用
在 SQL Server 2005 中,可以通过将非键列添加到非聚集索引的叶级别来扩展非聚集索引的功能。通过包含非键列,可以创建覆盖更多查询的非聚集索引。这是因为非键列具有下列优点:它们可以是不允许作为索引键列的数据类型。 在计算索引键列数或索引键大小时,数据库引擎 不考虑它们。当查询中的所有列都作为键列或非键列包含在索引中时,带有包含性非键列的索引可以显著提高查转载 2012-02-02 13:38:11 · 11867 阅读 · 0 评论 -
有关T-SQL的10个好习惯
1.在生产环境中不要出现Select *这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主要的原因来自以下两点:扩展方面的问题 造成额外的书签查找或是由查找变为扫描 扩展方面的问题是当表中添加一个列时,Select *会把这一转载 2014-01-21 17:37:03 · 806 阅读 · 0 评论 -
聚类索引要不要加 order by
数据库要不要加order by给大家两个例子一看就知道了CREATE TABLE Beatles (LastName varchar(20) NOT NULL PRIMARY KEY CLUSTERED, FirstName varchar(20) NOT NULL UNIQUE NONCLUSTERED);INSERT INTO Beatles (LastNam原创 2012-04-20 15:03:44 · 1334 阅读 · 0 评论 -
SQL Server 查询优化 索引的结构与分类
一、索引的结构关系型数据库中以二维表来表达关系模型,表中的数据以页的形式存储在磁盘上,在SQL SERVER中,数据页是磁盘上8k的连续空间,那么,一个表的所有数据页在磁盘上是如何组织的呢?分两种情况:一是数据页间无序、随机地存储在磁盘上,这样的表叫做堆表;二是数据页间按某个表字段的值有序地存储在磁盘上,这样的表做索引组织表。 索引是什么?从物理结构上可分为两种:聚集索引和非聚集索引。转载 2012-02-08 14:15:53 · 2386 阅读 · 0 评论 -
SQL 获取连续编号中断号的最小值
问题描述;返回最小的缺失数,要求一定是正数.IF OBJECT_ID('dbo.T1') IS NOT NULL DROP TABLE dbo.T1;GOCREATE TABLE dbo.T1( keycol INT NOT NULL PRIMARY KEY CHECK(keycol > 0), datacol VARCHAR(10) NOT NULL);原创 2012-02-09 13:27:02 · 2065 阅读 · 1 评论 -
SQL Server2008存储结构之堆表、行溢出 、页结构、记录结构
堆数据表是没有聚集索引的表。即数据行不按任何特殊的顺序存储,数据页也没有任何特殊的顺序。数据页不在链接列表内链接。sys.system_internals_allocation_units 系统视图中的列 first_iam_page 指向管理特定分区中堆的分配空间的一系列 IAM 页的第一页。SQL Server 使用 IAM 页在堆中移动。堆内的数据页和行没有任何特定的顺序,也不链接在一起。数转载 2012-02-08 14:09:40 · 2247 阅读 · 0 评论 -
SQL Server 2005 中的分区表和索引
SQL Server 2005 发布日期 : 3/24/2005 | 更新日期 : 3/24/2005Kimberly L. TrippSQLskills.com 的创始人适用于:SQL Server 2005摘要:SQL Server 2005 中基于表的分区功能为简化分区表的创建和维护过程提供了灵活性和更好的性能。追溯从逻辑分区表和手动分区表的功能到最新分区功能的发转载 2012-02-08 13:45:54 · 826 阅读 · 0 评论 -
SQL Server 2008存储结构之GAM、SGAM
【IT168专稿】谈到GAM和SGAM,我们不得不从数据库的页和区说起。一个数据库由用户定义的空间构成,这些空间用来永久存储用户对象,例如数据库管理信息、表和索引。这些空间被分配在一个或多个操作系统文件中。 当我们创建一个数据库的时候,例如以缺省的方式CREATE DATABASE TESTDB,SQLServer自动帮我们创建好如下两个数据库文件。 这两个数据文件是实实在在转载 2012-02-07 17:22:18 · 1979 阅读 · 0 评论 -
Sql Server 中的Login,Schema,User,Role之间的关系
相信很多人初次看到这几个对象都会晕,今天我就带领大家一起来把这几个概念捋一捋。· Login Login是Server一级的概念,表示登录Server的凭证,比如在Server_A上有一个数据库DA,那么想要访问数据库DA,第一步要做的事情就是先登录到Hosting该数据库的Server_A上,数据库管理员可以用下面的T-SQL语句来创建一个Logi原创 2011-05-26 15:30:00 · 6539 阅读 · 0 评论 -
Sql Server 2005中的架构(Schema)、用户(User)、登录(Login)和角色(Role)
SQL Server2010-02-02 16:05:06 阅读189评论0 字号:大中小 订阅我相信很多人接触这些概念的时候一头雾水。要把这些概念理清楚真不是件容易的事,哪像原始社会,只要能分清楚什么能吃什么不能吃就行了。 但是我始终坚信,每一个概念的产生必然是因为碰到了无法解决的问题。换句话说,如果没有它,必然会导致某些问题难以解决。所以我想从转载 2011-05-26 18:39:00 · 1438 阅读 · 0 评论 -
数据库页和扩展盘区
在 Microsoft® SQL Server™ 中,数据存储的基本单位是页。在 SQL Server 2000 中,页的大小是 8 KB。这意味着 SQL Server 2000 数据库每兆字节有 128 页。每页的开始部分是 96 字节的页首,用于存储系统信息,如页的类型、页的可用空间量、拥有页的对象的对象 ID 等。下表显示 SQL Server 2000 数据库的数据文件中的八种页转载 2012-02-02 13:29:04 · 1871 阅读 · 0 评论 -
MSSQL(T-SQL)查询语句执行时间
做数据库卡法要经常关注数据库的性能, 要关注语句执行性能如何,这就需要对语句执行速度进行统计分析,MS-SMS只显示到秒, 对于MS级的查询需要我们自己来写。有两种方式可以实现:1. 利用getdate()函数USE [AdventureWorks]GOdeclare @beginTime datetimedeclare @endTime datetimeset @begi原创 2012-01-20 11:39:04 · 3191 阅读 · 0 评论 -
在linux上配置unixODBC和FreeTDS访问MS SQL Server.
一, 安装 unixODBC下载安装包. 在 RedHat 安装光盘上就有unixODBC-2.2.11-1.RHEL4.1.i386.rpmunixODBC-devel-2.2.11-1.RHEL4.1.i386.rpmunixODBC-kde-2.2.11-1.RHEL4.1.i386.rpm安装rpm -Uvh unixODBC-2.2.11-1.RHEL4.原创 2011-05-23 09:47:00 · 1756 阅读 · 1 评论 -
DBCC SHOWCONTIG 索引碎片查询
显示指定的表的数据和索引的碎片信息。语法DBCC SHOWCONTIG [ ( { table_name | table_id | view_name |view_id } [ , index_name | index_id ] ) ] [ WITH { ALL_INDEXES转载 2012-02-02 13:33:21 · 6007 阅读 · 0 评论 -
浅谈SQL Server 对于内存的管理
简介理解SQL Server对于内存的管理是对于SQL Server问题处理和性能调优的基本,本篇文章讲述SQL Server对于内存管理的内存原理。二级存储(secondary storage)对于计算机来说,存储体系是分层级的。离CPU越近的地方速度愉快,但容量越小(如图1所示)。比如:传统的计算机存储体系结构离CPU由近到远依次是:CPU内的寄存器,一级缓存,二级缓存,内存,转载 2014-01-21 17:39:15 · 1440 阅读 · 0 评论