2010-11-22 8 views
3
SELECT xmlserialize (DOCUMENT (
    SELECT xmlroot(
    xmlelement(name root, 
     xmlelement(name value, 'test') 
    ), version '1.0') 
) AS text); 

döner:Bir XML türünü metne serileştirirken, PostgreSQL XML bildirimini içermez, değil mi?

< kök > < değeri > testi </değer > </kök >

İstediğim (ve beklenen):?

< xml version = '1.0'? > < kök > < değeri > testi </değer > </kök >

gidebileceğimi Tabii

:

SELECT '<?xml version="1.0"?> ' || xmlserialize (CONTENT (... 

ama sonra xmlroot dahil ne anlamı var? xmlroot ait standalone seçenek yes veya no değeriyle kullanılırsa

cevap

5

Bu xml beyanı içermektedir (ı v8.3.7, v8.4.4 Windows XP üzerinde & v9.0.0 denemiştir):

SELECT xmlserialize (DOCUMENT (
    SELECT xmlroot(
    xmlelement(name root, 
     xmlelement(name value, 'test') 
    ), version '1.0', standalone yes) 
) AS text); 
+0

Mükemmel, teşekkürler! – markmnl

İlgili konular