Jcat
          寵辱不驚,閑看庭前花開花落~~
          posts - 173,comments - 67,trackbacks - 0
          行鏈接:
          1. 一條記錄的大小大于block size,則產生行鏈接
          2. 容易發生在比較大的行上
          3. 因為行鏈接是由db_block_size不夠大引起的,所以對已有的行鏈接是無法清除的
          4. 9i以后,可以對不同的表空間設置不同的db_block_size,可以將一些特殊的寬表放在大block size的表空間

          例子:
          表空間block size為8k(8192),因為數據塊頭也要占一定空間,所以如下例,實際只能放7948的數據,一旦超過,就產生行鏈接

          --無
          create table test7948(a char(2000),b char(2000),c char(2000),d char(1948))
          tablespace test;

          insert into test7948 values('a','b','c','d');
          commit;

          --有
          create table test7949(a char(2000),b char(2000),c char(2000),d char(1949))
          tablespace test;

          insert into test7949 values('a','b','c','d');
          commit;



          行遷移:
          1. 本來是放的下的
          2. 因為更新使row size變大了,一個block里又不足以放下增加的空間(PCTFREE相關),則產生行遷移
          3. 容易發生在PCTFREE較小,對類似varchar類型的update又很多的表上
          4. 無法避免,但通過把數據導出導入進行清除

          例子:
          --無
          create table test7948_vchar(a char(2000),b char(2000),c char(2000),d char(1940), e varchar(9))
          tablespace test;

          insert into test7948_vchar values('a','b','c','d','12345678');
          commit;

          一更新,使得row size大于7948了,產生行遷移
          --有
          update test7948_vchar set e='123456789'
          posted on 2010-06-13 14:08 Jcat 閱讀(242) 評論(0)  編輯  收藏 所屬分類: Database
          主站蜘蛛池模板: 正安县| 革吉县| 同江市| 平顶山市| 南昌县| 金阳县| 宁陕县| 托克逊县| 井陉县| 邢台市| 新干县| 兰西县| 建阳市| 乌拉特前旗| 林西县| 麻阳| 循化| 三河市| 合肥市| 鄂尔多斯市| 浦县| 崇义县| 兰坪| 水富县| 桦南县| 尉犁县| 辉县市| 唐山市| 从化市| 伊川县| 且末县| 泌阳县| 六枝特区| 东明县| 田阳县| 三原县| 迭部县| 怀宁县| 灌云县| 青州市| 彭泽县|