【问题标题】:ORA-43853 when creating a xml column stored as binary within an Oracle tableORA-43853 在 Oracle 表中创建以二进制形式存储的 xml 列时
【发布时间】:2018-07-31 06:19:39
【问题描述】:

我正在尝试通过命令在Oracle中创建一个表:

CREATE TABLE xml_binary (
   id    NUMBER,
   fv  XMLTYPE)
   XMLTYPE fv STORE AS BINARY XML
      XMLSCHEMA "http://www.example.com/fvInteger_binary.xsd"
      ELEMENT "ROOT";

但是,我得到了错误:

ORA-43853: SECUREFILE lob 不能在非 ASSM 表空间中使用

我在this forum 中找到了一个解决方案,即通过命令忽略错误:

ALTER SYSTEM SET db_securefile = 'IGNORE;

但是,我认为这不是一个好的解决方案。

我该怎么做才能正确解决它?

提前致谢!

【问题讨论】:

    标签: xml oracle binary blob oracle12c


    【解决方案1】:

    只能在 ASSM 表空间上创建安全文件。

    SELECT tablespace_name,  segment_space_management
          FROM dba_tablespaces;
    

    segment_space_management = auto = ASSM-tablespace。

    db_securefile = 'IGNORE' 以这种方式工作。重启后,db 会忽略 SF 的相关信息,并会创建 basicfile。

    解决方案:

    1) 将 binaryxml 存储在基本文件中。

    XMLTYPE fv STORE AS BASICFILE BINARY XML
    

    2) 将 binaryxml 存储在 assm 表空间的安全文件中。

     XMLTYPE fv STORE AS securefile BINARY XML(tablespace assm_tablespace) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-07
      • 1970-01-01
      • 2015-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多