溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

DM7,DM8和ORACLE中對分區split的區別是什么

發布時間:2021-12-07 10:02:25 來源:億速云 閱讀:262 作者:iii 欄目:數據庫

本篇內容主要講解“DM7,DM8和ORACLE中對分區split的區別是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“DM7,DM8和ORACLE中對分區split的區別是什么”吧!

在oracle中,我們可以通過如下的命令去split分區,可以保留原分區名。達夢7和達夢8不能保留原分區名,我們用如下的命令來進行測試:

oracle 11g:

CREATE TABLE HC.PARTITION_HB 

   (  PID NUMBER NOT NULL , 

      PITEM VARCHAR2(200), 

      PDATA DATE NOT NULL 

   ) 

  PARTITION BY RANGE (PID) 

 (PARTITION PART_01  VALUES LESS THAN (5) , 

 PARTITION PART_02  VALUES LESS THAN (10)  , 

 PARTITION PART_03  VALUES LESS THAN (20) , 

 PARTITION PART_MAX  VALUES LESS THAN (MAXVALUE) ) ;

BEGIN

FOR I IN 1..150 LOOP

INSERT INTO HC.PARTITION_HB  VALUES(I,'AA'||I,sysdate);

COMMIT;

END LOOP;

END;

alter table hc.partition_hb SPLIT PARTITION part_max AT(150) INTO

(PARTITION PART_04,PARTITION PART_MAX);

select * from hc.partition_hb partition(part_max);

ALTER TABLE hc.partition_hb RENAME PARTITION part_max TO part_max1;

執行成功,可以用rename來重命名分區

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

DM7 中:

create user hc identified by dameng123;

grant dba to hc;

CREATE TABLE HC.PARTITION_HB 

   (  PID NUMBER NOT NULL ENABLE, 

      PITEM VARCHAR2(200), 

      PDATA DATE NOT NULL ENABLE

   ) 

  PARTITION BY RANGE (PID) 

 (PARTITION PART_01  VALUES LESS THAN (5) , 

 PARTITION PART_02  VALUES LESS THAN (10)  , 

 PARTITION PART_03  VALUES LESS THAN (20) , 

 PARTITION PART_MAX  VALUES LESS THAN (MAXVALUE) ) ;

BEGIN

FOR I IN 1..150 LOOP

INSERT INTO HC.PARTITION_HB  VALUES(I,'AA'||I,sysdate);

COMMIT;

END LOOP;

END;

select count(1) from hc.partition_hb partition(part_max);

alTer table hc.partition_hb SPLIT PARTITION part_max AT(150) INTO

(PARTITION PART_04,PARTITION PART_MAX1);

ALTER TABLE hc.partition_hb RENAME PARTITION part_max1 TO part_max;

[執行語句1]:

ALTER TABLE hc.partition_hb RENAME PARTITION part_max1 TO part_max;

執行失敗(語句1)

第 1 行, 第 74 列[PARTITION]附近出現錯誤[-2007]: 

語法分析出錯

可以看到達夢7不支持rename,也不支持對象重名,也就是split后的分區在原始表中不能有,故只能改成part_max1;

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

dm8:

[root@dm8os tool]# ./disql sysdba/dameng123

disql V8

SQL> show user;

未知的 SHOW 選項 user

SQL> select user;

未連接

SQL> conn sysdba/dameng123

服務器[LOCALHOST:5236]:處于普通配置狀態

登錄使用時間: 4.958(毫秒)

SQL> create user hc identified by dameng123;

grant dba to hc;

create user hc identified by dameng123;

[-510]:系統處于MOUNT狀態.

已用時間: 21.042(毫秒). 執行號:0.

SQL> grant dba to hc;

[-510]:系統處于MOUNT狀態.

已用時間: 2.532(毫秒). 執行號:0.

SQL> 

SQL> CREATE TABLE HC.PARTITION_HB 

2      (  PID NUMBER NOT NULL ENABLE, 

3         PITEM VARCHAR2(200), 

4         PDATA DATE NOT NULL ENABLE

5      ) 

6     PARTITION BY RANGE (PID) 

7    (PARTITION PART_01  VALUES LESS THAN (5) , 

8    PARTITION PART_02  VALUES LESS THAN (10)  , 

9    PARTITION PART_03  VALUES LESS THAN (20) , 

10   PARTITION PART_MAX  VALUES LESS THAN (MAXVALUE) ) ;

CREATE TABLE HC.PARTITION_HB 

   (  PID NUMBER NOT NULL ENABLE, 

      PITEM VARCHAR2(200), 

      PDATA DATE NOT NULL ENABLE

   ) 

  PARTITION BY RANGE (PID) 

 (PARTITION PART_01  VALUES LESS THAN (5) , 

 PARTITION PART_02  VALUES LESS THAN (10)  , 

 PARTITION PART_03  VALUES LESS THAN (20) , 

 PARTITION PART_MAX  VALUES LESS THAN (MAXVALUE) ) ;

[-510]:系統處于MOUNT狀態.

已用時間: 3.614(毫秒). 執行號:0.

SQL> alter database open;

操作已執行

已用時間: 00:00:01.924. 執行號:0.

SQL> create user hc identified by dameng123;

create user hc identified by dameng123;

第1 行附近出現錯誤[-2124]:對象[HC]已存在.

已用時間: 1.310(毫秒). 執行號:0.

SQL> grant dba to hc;

操作已執行

已用時間: 11.131(毫秒). 執行號:4.

SQL> 

SQL> CREATE TABLE HC.PARTITION_HB 

2      (  PID NUMBER NOT NULL ENABLE, 

3         PITEM VARCHAR2(200), 

4         PDATA DATE NOT NULL ENABLE

5      ) 

6     PARTITION BY RANGE (PID) 

7    (PARTITION PART_01  VALUES LESS THAN (5) , 

8    PARTITION PART_02  VALUES LESS THAN (10)  , 

9    PARTITION PART_03  VALUES LESS THAN (20) , 

10   PARTITION PART_MAX  VALUES LESS THAN (MAXVALUE) ) ;

操作已執行

已用時間: 28.160(毫秒). 執行號:5.

SQL>  

2   BEGIN

3   FOR I IN 1..150 LOOP

4   INSERT INTO HC.PARTITION_HB  VALUES(I,'AA'||I,sysdate);

5   COMMIT;

6   END LOOP;

7   END;

8   /

DMSQL 過程已成功完成

已用時間: 257.421(毫秒). 執行號:6.

SQL> select count(1) from hc.partition_hb partition(part_max);

行號     COUNT(1)            

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

1          131

已用時間: 2.695(毫秒). 執行號:7.

SQL> alTer table hc.partition_hb SPLIT PARTITION part_max AT(150) INTO

2   (PARTITION PART_04,PARTITION PART_MAX);

alTer table hc.partition_hb SPLIT PARTITION part_max AT(150) INTO

(PARTITION PART_04,PARTITION PART_MAX);

第2 行附近出現錯誤[-2622]:分區名與數據庫對象名稱沖突.

已用時間: 0.757(毫秒). 執行號:0.

SQL> alTer table hc.partition_hb SPLIT PARTITION part_max AT(150) INTO

2   (PARTITION PART_04,PARTITION PART_MAX1);

操作已執行

已用時間: 90.611(毫秒). 執行號:8.

SQL> ALTER TABLE hc.partition_hb RENAME PARTITION part_max1 TO part_max;

操作已執行

已用時間: 117.870(毫秒). 執行號:9.

SQL> 

到此,相信大家對“DM7,DM8和ORACLE中對分區split的區別是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女