進出口尋找將數據從一個表複製到另一個數據拷貝,我使用Oracle PL/SQL,我理解簡單的語句SQL - 從另一個表,其中包括分區
insert into cc_staff_2
select * from cc_staff
這從CC_staff並選擇所有列將他們置於CC_staff_2。但是,兩個表都有不同的分區。因此,例如
我創建CC_staff與partion
CREATE TABLE CC_STAFF
( CCS_STAFF_SK NUMBER (38),
CCS_NAME VARCHAR2 (30),
CCS_BIRTH_DATE DATE,
CCS_GENDER VARCHAR2 (1),
CCS_MAR_STATUS VARCHAR2 (20),
CCS_OFFICE_SK NUMBER (38),
CCS_SALARY NUMBER (38))
PARTITION BY RANGE (CCS_SALARY)
(PARTITION SAL_20 VALUES LESS THAN (20000),
PARTITION SAL_30 VALUES LESS THAN (30000),
PARTITION SAL_50 VALUES LESS THAN (50000))
然後創建Cc_Staff_2爲相同的表,但具有不同的分區
CREATE TABLE CC_STAFF
( CCS_STAFF_SK NUMBER (38),
CCS_NAME VARCHAR2 (30),
CCS_BIRTH_DATE DATE,
CCS_GENDER VARCHAR2 (1),
CCS_MAR_STATUS VARCHAR2 (20),
CCS_OFFICE_SK NUMBER (38),
CCS_SALARY NUMBER (38))
PARTITION BY LIST (CCS_OFFICE_SK)
(PARTITION NEWC VALUES (561),
PARTITION LEED VALUES (562),
PARTITION SHEF VALUES (563))
我手動將在數據CC_Staff和現在希望將此數據複製到CC_Staff_2。正如你所看到的,列是不同分區的最後兩列的欄。
錯誤消息我得到的是:
ORA-14400 - 插入分區鍵沒有映射到任何分區
所以,如果我複製表,複製數據了。然後刪除新表中的舊分區並添加新分區? –
謝謝你 –