sql server 2005 技术内幕 存储引擎191页的问题
CSDN网页版的http://book.csdn.net/bookfiles/504/10050417359.shtml
用于存储地址、名字、URL的列的数据长度变动都比较大。那么我们来看看选择定长列与变长列之间的不同之处。在图6-3中使用的都是定长列,不论行中的实际数据长度是多少,每行都要占用384字节。对于这张表中的每条记录SQL Server还需要额外的10字节开销,因此存储每条记录总共需要394字节。即使把表中的地址列和名称列都填满,平均行大小也只不过是最大值的一成。
图6-3 所有列都是固定长度的customer表
表6-4 包含变长列的customer表
在图6-4中,对于所有的变长列,假设平均记录长度实际上大约是最大值的一半。那么平均行长度不是394字节,而应该是224字节。这个长度是这样计算出来的:smallint和char(2)列加起来是4个字节;varchar列的最大总长度是380,折半就是190字节;再加上对于9个varchar列每个列都需要2字节的开销,共18字节;还有对于每条包含变长列记录的2字节的开销;另外,这些行与图6-3中的定长行一样需要10字节的开销,不论是否有变长列。因此总数就是4 + 190 + 18 + 2 + 10 = 224(本章稍后会讨论这些字节开销的实际意义)。
----------------------------------------------------
1,(还有对于每条包含变长列记录的2字节的开销) 他这个应该是指的变长列的数目占用的2字节吧?
2,(这些行与图6-3中的定长行一样需要10字节的开销) 我不知道这个表6-4里的这10字节是怎么算出来的,我加上了行偏移矩阵的2字节,也只不过9字节,只有2个定长列,null位图占用1字节就够了吧.他说10字节是怎么算的?
1、varchar 类型除了实际字
相关问答:
小弟是个新手 现在有个问题一直不能解决
例如
procedure produce_proc
@p001 nvarchar(8000),
@p002 nvarchar(8000),
@p003 nvarchar(8000),
& ......
小弟最近遇到一个问题,要求得出哪个班级的教师待遇最高,把同一个班级的教师待遇合计起来
班级表 教师表
班级ID & ......
有字段
日期,id
日期不重复,id 有重复
需要筛选出 每个id里面日期最早的数据。
SQL code:
select * from 表 t where not exists(select 1 from 表 where t.日期>日期 and id=t.id)
SQL ......
环境:1.win2003server+oracle9i
2.oracle9i字符集为AMERICAN_AMERICA.WE8ISO8859P1
3.oracle sql developer版本 1.5.5
现象描述: 1.在sql developer 中查询oracle中的某个表,中文全部显示为乱码。
......
问题描述
有两台服务器 DB1(10.10.10.1) DB2(10、10、10、2) 这两台机器做的 群集 虚拟IP (10、10、10、11)
国庆放假回来发现 服务器 无法登 ......