【问题标题】:how to parse an xml string in postgres如何在 postgres 中解析 xml 字符串
【发布时间】:2010-10-26 03:10:11
【问题描述】:

在 ms sql 中我有以下代码:

ALTER PROCEDURE [dbo].[xmlDictamen_Alta]
  @Xml text
as begin

declare @Id            integer
declare @DictamenId    numeric(18,0)
declare @DocumentoId   numeric(18,0)
declare @Descripcion   varchar(300)

begin

    set nocount on
    exec dbo.sp_xml_preparedocument @Id output, @Xml

    select 
        @DocumentId  = DocumentId,
        @Description = IsNull( Description, ''),
    from 
    OpenXml( @IdXml, '/Parameter', 2) with (
    DocumentId       numeric(18,0),
    Description      varchar(300)
    )

    exec dbo.sp_xml_removedocument @IdXml


/*
execute xmlDictamen_Alta
'
    <Parameter>
      <DocumentId>1328</DocumentId>
      <Description>Descripcion</Description>
    </Parameter>
'
*/

如何将这些存储过程移植到 postgres 中???

【问题讨论】:

    标签: sql-server xml postgresql xml-parsing


    【解决方案1】:

    在 PostgreSQl 中,xml 功能很弱。但是你可以使用 plperU 过程来做到这一点。

    create or replace function proc_parse_xml(xml text) return setof tp_docs as $$
    
    use XML::DOM;
    
    my $pr = new XML::DOM::Parser;
    my $xmldocs = $pr->parse(xml);
    
    ......
    
    return;
     $$ language plperlU;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多