ORACLE數據庫如何查看分區表的相關信息呢?不知道你有沒有總結過這方面的知識。下面我們先創建兩個表TEST、 GPRS_CELLTOPVOL_WK來做實驗,腳本如下:
CREATE TABLE GPRS_CELLTOPVOL_WK
(
DATE_CD NUMBER ( 8 ) NOT NULL ,
WK_CD NUMBER ( 2 ) NOT NULL ,
CITY_ID NUMBER ( 10 ) ,
CELL_EN_NAM VARCHAR2 ( 64 ) NOT NULL ,
CELL_CN_NAM VARCHAR2 ( 64 ) NOT NULL ,
CELL_VOL NUMBER ,
CELL_VOL_PCT NUMBER ,
AVG_RAT NUMBER ,
CONSTRAINT PK_GPRS_CELLTOPVOL_WK PRIMARY KEY (DATE_CD, WK_CD, CITY_ID, CELL_EN_NAM, CELL_CN_NAM)
) PARTITION BY RANGE(DATE_CD)
(
PARTITION TEST_RANGE_1 VALUES LESS THAN (201104) TABLESPACE USERS,
PARTITION TEST_RANGE_2 VALUES LESS THAN (201105) TABLESPACE USERS,
PARTITION TEST_RANGE_3 VALUES LESS THAN (201106) TABLESPACE USERS
);
/
COMMENT ON TABLE GPRS_CELLTOPVOL_WK IS 'GPRS流量小區周分析'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.DATE_CD IS '日期編碼'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.WK_CD IS '周次編碼'
/
COMMENT
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.CELL_EN_NAM IS '小區英文名'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.CELL_CN_NAM IS '小區中文名'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.CELL_VOL IS '小區流量'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.CELL_VOL_PCT IS '小區流量占比'
/
COMMENT ON COLUMN GPRS_CELLTOPVOL_WK.AVG_RAT IS '平均速率'
/
CREATE TABLE TEST
(
ID NUMBER(10) ,
NAME VARCHAR2(20),
SEX VARCHAR2(2)
)
TABLESPACE SYSTEM
PCTFREE 10
PCTUSED 40
INITRANS 1
MAXTRANS 255
STORAGE
(
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
);
假設你是一個開發人員或DBA,你想查看數據庫里面那些表或某個表是否分區表,你可以用下面的幾種方法去查看。
方法1:
SELECT * FROM ALL_TABLES WHERE TABLE_NAME = 'TEST'
SELECT * FROM ALL_TABLES WHERE TABLE_NAME = 'GPRS_CELLTOPVOL_WK';
如圖所示截圖你會發現GPRS_CELLTOPVOL_WK表的TABLESPCAE_NAME為空,而表TEST的TABLESPCAE_NAME為SYSTEM,所以你可以通過TABLESPCAE_NAME是否為空來判斷一個表是否為分區表。網上有人給出這種方法,但是要切記的是,不見得TABLESPCAE_NAME為NULL,則該表就是分區表,兩者之間沒有互推關系。OWNER為HR的COUNTRIES表就是一個例子。其實你可以通過 ALL_TABLES里的字段PARTITIONED的值為YES或NO來區分該表是否是分區表。如下下所示
SELECT PARTITIONED FROM ALL_TABLES WHERE TABLESPACE_NAME IS NULL
新聞熱點
疑難解答
圖片精選