Создайте секционированную таблицу со столбцом XMLTYPE и надписями, хранящимися в разных табличных пространствах - PullRequest
0 голосов
/ 08 ноября 2018

Мне нужно создать секционированную таблицу со столбцом XMLTYPE, который хранится в виде SECUREFILE BINARY XML, и для каких-либо разделов, сохраняемых в разных табличных пространствах, но у меня проблемы с синтаксисом для создания этой таблицы. Когда я пытаюсь создать таблицу с кодом ниже, оракул запускает ошибку - ORA-14020 в определении lob в разделах. Я пытался создать таблицу, используя CLOB и синтаксис работал, но когда я использую с столбцом XMLTYPE нет. Итак, каков правильный синтаксис для создания этой таблицы со столбцом XMLTYPE и надписями, хранящимися в разных табличных пространствах?

Спасибо.

Примечание: ORA-14020 : этот физический атрибут не может быть указан для раздела таблицы.

Создать код таблицы:

-- Create table
create table APL_X.TAB_X
(
  tnf_chave         CHAR(44) not null,
  tnf_arquivo       VARCHAR2(10),
  tnf_data_proc     DATE default SYSDATE,
  tnf_sitran        VARCHAR2(1),
  tnf_nfe           SYS.XMLTYPE,
  tnf_cpf_cnpj_emit NUMBER(14),
  tnf_cpf_cnpj_dest NUMBER(14),
  tnf_emissao       DATE,
  tnf_numnf         NUMBER(16),
  tnf_uf_emit       VARCHAR2(2),
  tnf_uf_dest       VARCHAR2(2),
  tnf_tiponf        NUMBER(2),
  tnf_serie         VARCHAR2(3),
  tnf_id_nfe        NUMBER(20),
  tnf_nsu           NUMBER(20),
  tnf_origem        NUMBER(3)
)
tablespace TS_DVNFE_PROD
COMPRESS FOR OLTP XMLTYPE COLUMN TNF_NFE STORE AS SECUREFILE BINARY XML (COMPRESS HIGH DEDUPLICATE)
partition by range (TNF_EMISSAO)
subpartition by hash(tnf_id_nfe)
subpartitions 4
(
partition P1_EMISSAO values less than (TO_DATE('01/01/2009', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_HIST LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_HIST DEDUPLICATE),
partition P2_EMISSAO_2009 values less than (TO_DATE('01/01/2010', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_HIST LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_HIST DEDUPLICATE),
partition P3_EMISSAO_2010 values less than (TO_DATE('01/01/2011', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_HIST LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_HIST DEDUPLICATE),
partition P4_EMISSAO_2011 values less than (TO_DATE('01/01/2012', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_HIST LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_HIST DEDUPLICATE),
partition P5_EMISSAO_2012 values less than (TO_DATE('01/01/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_HIST LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_HIST DEDUPLICATE),
partition P6_EMISSAO_2013_01 values less than (TO_DATE('01/02/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_2013 LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_2013 DEDUPLICATE)
        (
        subpartition P6_SUBP_2013_01_01 tablespace TS_DVNFE_2013,
        subpartition P6_SUBP_2013_01_02 tablespace TS_DVNFE_2013,
        subpartition P6_SUBP_2013_01_03 tablespace TS_DVNFE_2013,
        subpartition P6_SUBP_2013_01_04 tablespace TS_DVNFE_2013
        ),
partition P7_EMISSAO_2013_02 values less than (TO_DATE('01/03/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_2013 LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_2013 DEDUPLICATE)
        (
        subpartition P7_SUBP_2013_02_01 tablespace TS_DVNFE_2013,
        subpartition P7_SUBP_2013_02_02 tablespace TS_DVNFE_2013,
        subpartition P7_SUBP_2013_02_03 tablespace TS_DVNFE_2013,
        subpartition P7_SUBP_2013_02_04 tablespace TS_DVNFE_2013
        ),
partition P8_EMISSAO_2013_03 values less than (TO_DATE('01/04/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_2013 LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_2013 DEDUPLICATE)
        (
        subpartition P8_SUBP_2013_03_01 tablespace TS_DVNFE_2013,
        subpartition P8_SUBP_2013_03_02 tablespace TS_DVNFE_2013,
        subpartition P8_SUBP_2013_03_03 tablespace TS_DVNFE_2013,
        subpartition P8_SUBP_2013_03_04 tablespace TS_DVNFE_2013
        ),
partition P9_EMISSAO_2013_04 values less than (TO_DATE('01/05/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_2013 LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_2013 DEDUPLICATE)
        (
        subpartition P9_SUBP_2013_04_01 tablespace TS_DVNFE_2013,
        subpartition P9_SUBP_2013_04_02 tablespace TS_DVNFE_2013,
        subpartition P9_SUBP_2013_04_03 tablespace TS_DVNFE_2013,
        subpartition P9_SUBP_2013_04_04 tablespace TS_DVNFE_2013
        ),
partition P10_EMISSAO_2013_05 values less than (TO_DATE('01/06/2013', 'DD/MM/YYYY')) compress for oltp tablespace TS_DVNFE_2013 LOB (TNF_NFE) STORE AS SECUREFILE BINARY XML (COMPRESS HIGH TABLESPACE TS_LOBNFE_2013 DEDUPLICATE)
        (
        subpartition P10_SUBP_2013_05_01 tablespace TS_DVNFE_2013,
        subpartition P10_SUBP_2013_05_02 tablespace TS_DVNFE_2013,
        subpartition P10_SUBP_2013_05_03 tablespace TS_DVNFE_2013,
        subpartition P10_SUBP_2013_05_04 tablespace TS_DVNFE_2013
        )
        );
...