zoukankan      html  css  js  c++  java
  • 关于聚集表的学习

    关于簇表和表簇:

    1)簇表的后台有一张物理表叫表簇,定义簇表的时候要指定对应的表簇.一个表簇对应多张簇表.

    表簇的结构:

    Field

    Data type

    Meaning

    CLKEY1

    *

    First key field

    CLKEY2

    *

    Second key field

    ...

    ...

    ...

    CLKEYn

    *

    nth key field

    Pageno

    INT2(5)

    Number of the continuation record

    Timestamp

    CHAR(14)

    Time stamps

    Pagelg

    INT2(5)

    Length of the string in Vardata

    Vardata

    RAW (n)

    Contains the entries from the data fields of the assigned cluster tables as a string, max. length n depends on the database system used

    2)簇表是多张透明表组合而成,这些多张簇表中共有的主键在表簇中也会对应主键,注意是多张簇表中共有的。
    非共有的主键和非主键的所有值都存在表簇中的VARDATA字段中,是个字符串类型。表簇中连续记录簇表中的数据,如果记录值超过了
    字段VARDATA的长度,会被连续写到相同的键值下,字段Pageno用于区别相同的键值下记录的连续。字段Pagelg是记录字段Vardata中目前的
    数据字符串的长度,Timestamp时间戳。Pagelg和Timestamp相当于记录管理信息,因此查询簇表的时候也不可以用join 关联其他表

    3)查询簇表的时候ST05解析出来的是查询的表簇,所以下where条件的时候最好不要下非关键字的,最好去看看对应的表簇的关键字,要是
    要下非关键字的话就去查看簇表时由哪些透明表组成的,把条件下到那些透明表中。

    关于池表也叫共享表(下面都叫池表吧)  和表池:

    1)池表也叫共享表后台对应一张表叫表池,定义池表的时候也要制定对应的表池,一个表池也是对应多张池表共享表:

    表池的结构:

    Field

    Data type

    Meaning

    Tabname

    CHAR(10)

    Name of pooled table

    Varkey

    CHAR (n)

    Contains the entries from all key fields of the pooled table record as a string, max. length for n is 110

    Dataln

    INT2(5)

    Length of the string in Vardata

    Vardata

    RAW (n)

    Contains the entries from all data fields of the pooled table record as a string, max. length n depends on the database system used

    2)池表也是由多张透明表组成,表池中有四个字段其中Tabname记录所有它对应的池表名称,Varkey记录所有池表中的主键,(和表簇不同
    吧) 字段Vardata记录对应的池表中所有字段的数据记录形成一个大的字符串,它的最大长度取决于数据库系统,意思就是表池中的一条记
    录就是一个表的所有记录。字段Dataln也是用来记录字段Vardata中存储字符串的长度。

    3) 因为查询池表的时候数据库中也是没有一个对应的表的,是查询的表池中的数据,表池中没有对应的字段,这边尝试了where条件是主键
    的话,表池会根据查询的字段条件是 池表的名称TABNAME 和 存主键的字段VARKEY,并且把VARKEY定义个条件范围用between关键字。如果下
    的条件没有主键的话,就仅仅解析出where条件只是池表的名称,但是也能查询出来数据,但是数据量大的情况下会是很慢的,显然跟池表一
    样都可以查询出来,但是我们不要用,因为速度太慢。显然该表查询也是不能用join关联其他表的。

    总结:

    簇表和池表(共享表)都叫聚集表,这两种表都是大大压缩了数据库的空间,一般都会存储系统数据,比如屏幕数据,文档之类的。用的时
    候要慎重。   2014/5/28 下午

  • 相关阅读:
    jenkins实现git自动拉取代码时替换配置文件
    【一些小常识】Linux文件目录的通配符用法/*
    mysql使用——sql实现随机取一条数据
    jmeter使用问题——数据库无法连接
    【测试点】微信小程序的常见测试点
    分位数介绍
    elk开源版本支持的功能
    kali下的webshell工具-Weevely
    kali中的webshell工具--webacoo
    sql报错注入:extractvalue、updatexml报错原理
  • 原文地址:https://www.cnblogs.com/caizjian/p/3757283.html
Copyright © 2011-2022 走看看