25 jun

Oracle 11g – Criando tabela a partir de um arquivo XML

Crie um diretório no oracle e coloque o arquivo xml desejado dentro dele.

Segue um exemplo:

CREATE TABLE T_ORGAO_SIORG
AS
SELECT
    CAST(TO_NUMBER(extractValue(value(x),'Dados_Cadastro/Codigo'))AS NUMBER(10) ) CD_ORGAO_SIORG,
    CAST(extractValue(value(x),'Dados_Cadastro/Nome') AS VARCHAR2(110)) NM_ORGAO_SIORG,
    CAST(extractValue(value(x),'Dados_Cadastro/Sigla') AS VARCHAR2(6)) SG_ORGAO_SIORG_,
    CAST(TO_NUMBER(extractValue(value(x),'Dados_Cadastro/Codigo_Pai'))AS NUMBER(10) ) CD_ORGAO_SIORG_PAI,
    CAST(extractValue(value(x),'Dados_Cadastro/Site') AS VARCHAR2(70)) ED_SITE
FROM 
TABLE(XMLSEQUENCE(EXTRACT(XMLTYPE(BFILENAME('MEU_DIRETORIO_ORACLE','Estrutura_Organizacional.xml'),nls_charset_id('WE8MSWIN1252')),'/Estrutura_Organizacional/Orgao/Dados_Cadastro'))) X;

Referências:

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *