重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
SQLServer2000提供了一个读取数据页结构的命令DBCC Page。该命令为非文档化的命令,具体如下:
成都创新互联从2013年创立,是专业互联网技术服务公司,拥有项目网站建设、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元肃南裕固族自治做网站,已为上家服务,为肃南裕固族自治各地企业和个人服务,联系电话:13518219792
DBCC Page ({dbid|dbname},filenum,pagenum[,printopt])
DBCC Page的输出主要分为5个部分: Page、BUFFER、Page Hearder、Data、OFFSET Table(行的偏移量数组)。
Page指出该表的文件编号及页码。
Buffer指出关于给定页面的缓冲区的信息。
Page Header指出页面中所有标题字段的数据。
Data指出每一行的信息。对于每一行,DBCC Page指出行在槽中的位置,以及该行在页面中的偏移量。页面数据被分成3部分,左列指出的是所显示的数据在行中的字节位置。接着4列包含页面存储的实际数据,以16进制的形式显示。右列包含数据的字符表示(只有字符数据是可读的)。
Offset Table指出页面末尾的行偏移量数组的内容。注意这里并不是行物理存储的顺序,而是以槽的编号的顺序来显示的,不过这里可以通过槽的编号看出它的物理存储顺序,比如槽的编号最小的为物理存储的第一行,依此类推。
新建表表中无数据的时候不会分配页面。
向新表插入数据会在混合区分配页面。当表中数据或索引达到8页以后,会在统一区分配页面。
参考官方文档:
sqlserver分页有四种方法,先给大家介绍一种常用的
查看1到3条数据
假如查询每页大小为3,查询第2页的数据就是
declare @i int;
set @i=1;
while(exists(select * from T where b is null))
begin
update s
set s.b=@i
from T s inner join
(
select top(20000) a from T where b is null order by a
) t on s.a=t.a;
set @i=@i+1;
end
这个是sqlserver的,其他的数据库可以参考思路。