rowid 的資料型別

2021-08-22 12:51:20 字數 765 閱讀 7475

rowid 資料型別

--是一行的唯一標識

--用於定位行

rowid 的格式

oooooo fff bbbbbb rrr

資料物件號 相對檔案號 塊號 行號

資料物件編號需要32 位,相關檔案編號需要10 位,塊編號需要22,位行編號需要16 位,加起來總共是80 位或10 個位元組

資料檔案的最大尺寸?

32bit---object number--------,每個資料庫最多有4g個物件

10bit---file number-----,每個資料庫最多有1022個檔案(2個檔案預留)

22bit---block number--------,每個檔案最多有4m個block

16bit---row number--------,每個block最多有64k個rows

rowid的編碼方案和顯示

rowid 使用以64 為基數的編碼方案來顯示,該方案將六個位置用於資料物件編號,三個位置用於相關檔案編號,六個位置用於塊編號,三個位置用於行編號。

以64 為基數的編碼方案使用字元a-z a-z 0-9 + 和/,共64 個字元

sql> select rowid from lunar_emp;

rowid

------------------

aaag/laagaaaaceaaa

sql>

aaag/l 是資料物件編號

aag是相關檔案編號

aaaace是塊編號

aaa 是行編號

資料型別基礎資料型別

資料型別 基礎型別 除八大基礎型別其他的都是引用型資料型別 引用資料型別 基礎資料型別 整型 byte 佔乙個位元組,範圍 128 127 short 佔兩個位元組,範圍 32768 32767 int 最常用 佔四個位元組,範圍 2147483648 2147483647 long 佔八個位元組 ...

MySQL 資料型別 資料型別的屬性

資料表在建立時,需為每個字段選擇資料型別,而資料型別的選擇則決定著資料的儲存格式,有效範圍和相應的限制。mysql 提供了多種資料型別,主要分為 3 類 1 整型 mysql資料型別 含義 有符號 tinyint m 1個位元組 範圍 128 127 smallint m 2個位元組 範圍 3276...

複雜的資料型別 string資料型別

include include 為了使用getline函式和在我們的程式中使用string型別,使用string型別時我們需要包含string字元標頭檔案 using namespace std define item 10 使用巨集定義變數 void calcsum void string int...