XML Export, hinzufügen von: <?xml version="1.0" encoding="utf-8"?>

XML Export, hinzufügen von: <?xml version="1.0" encoding="utf-8"?>

am 08.09.2011 09:17:06 von postgreSQL

Hallo,

ich habe eine Abfrage für einen XML Export erstellt.

Hier die Struktur:








Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige,=20
was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch=20
nicht hinbekommen habe ist:



Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?

Danke + Grüße

Thomas

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XM

am 08.09.2011 10:32:00 von Andreas Kretschmer

postgresql@grizzlycrm.de wrote:

> Hallo,
>
> ich habe eine Abfrage für einen XML Export erstellt.
>
> Hier die Struktur:
>
>
>
>

>
>

>

>
> Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige, =20
> was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch =20
> nicht hinbekommen habe ist:
>
>
>
> Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?

Wie sieht Deine Ergebnismenge aus, das ist nur eine Spalte mit dem Text,
oder? Dann mast einfach ein UNION von SELECT '' und Deriner
Query.


Andreas
--=20
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect. (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly." (unknown)
Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889=
°

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XML Export, hinzufügen von: <?xml version="1.0" encoding="utf-8"?>

am 08.09.2011 11:06:04 von Thomas Uzunoff

>>
>>
>>

>>
>>

>>


Obiges ist Teil meiner Ergebnismenge. Das ist auch in einer Spalte. Wenn=20
ich aber eine SQL davor setze und mit UNION verbinde, kommt Fehlermeldung=
:

############################################################ ###########
FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
LINE 8: XMLELEMENT (NAME general_information, xmlattributes('1.0' as...
^
********** Fehler **********
FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
SQL Status:42883
Zeichen:33
############################################################ ###########

Habe dann gedacht, ich müsste die

SELECT XML 'asdf' as XMLELEMENT

vom Datentyp her anpassen (XML) hat aber auch nicht funktioniert,=20
Fehlermeldung bleibt die gleiche.

Meine XML Query ist von der Struktur etwa wie folgt:

SELECT
XMLELEMENT (NAME general_information, xmlattributes('1.0' as version)
,XMLELEMENT (NAME .....
,XMLAGG
XMLELEMENT
XMLELEMENT
...
XMLELEMENT
...
FROM
....
WHERE
....
GROUP BY
....




Am 08.09.2011 10:32, schrieb Andreas Kretschmer:
> postgresql@grizzlycrm.de wrote:
>
>> Hallo,
>>
>> ich habe eine Abfrage für einen XML Export erstellt.
>>
>> Hier die Struktur:
>>
>>
>>
>>

>>
>>

>>

>>
>> Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige,
>> was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch
>> nicht hinbekommen habe ist:
>>
>>
>>
>> Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?
>
> Wie sieht Deine Ergebnismenge aus, das ist nur eine Spalte mit dem Text=
,
> oder? Dann mast einfach ein UNION von SELECT '' und Deriner
> Query.
>
>
> Andreas

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: [pgsql-de-allgemein] XML Export, hinzufügen von: <?xml version="1.0" encoding="

am 08.09.2011 14:17:41 von Hans-Juergen Schoenig

hallo =85

du kannst dir den XML operator jederzeit sehr leicht selber machen =85

CREATE FUNCTION xml_my_compare(xml, xml) =85.

CREATE OPERATOR =85

warum gibt es den derzeit nicht? was ist, wenn zwei elemente in einer liste=
im xml vertauscht sind? soll dann true oder false kommen?
daher kann man den selber definieren, wenns ist (vorwiegend wegen order - s=
tring vergleich funkt nicht so wirklich).

lg,

hans



On Sep 8, 2011, at 11:06 AM, Thomas Uzunoff wrote:

> >>
> >>
> >>

> >>
> >>

> >>

>=20
> Obiges ist Teil meiner Ergebnismenge. Das ist auch in einer Spalte. Wenn =
ich aber eine SQL davor setze und mit UNION verbinde, kommt Fehlermeldung:
>=20
> ############################################################ ###########
> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
> LINE 8: XMLELEMENT (NAME general_information, xmlattributes('1.0' as...
> ^
> ********** Fehler **********
> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
> SQL Status:42883
> Zeichen:33
> ############################################################ ###########
>=20
> Habe dann gedacht, ich müsste die
>=20
> SELECT XML 'asdf' as XMLELEMENT
>=20
> vom Datentyp her anpassen (XML) hat aber auch nicht funktioniert, Fehlerm=
eldung bleibt die gleiche.
>=20
> Meine XML Query ist von der Struktur etwa wie folgt:
>=20
> SELECT
> XMLELEMENT (NAME general_information, xmlattributes('1.0' as version)
> ,XMLELEMENT (NAME .....
> ,XMLAGG
> XMLELEMENT
> XMLELEMENT
> ...
> XMLELEMENT
> ...
> FROM
> ...
> WHERE
> ...
> GROUP BY
> ...
>=20
>=20
>=20
>=20
> Am 08.09.2011 10:32, schrieb Andreas Kretschmer:
>> postgresql@grizzlycrm.de wrote:
>>=20
>>> Hallo,
>>>=20
>>> ich habe eine Abfrage für einen XML Export erstellt.
>>>=20
>>> Hier die Struktur:
>>>=20
>>>
>>>
>>>

>>>
>>>

>>>

>>>=20
>>> Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige,
>>> was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch
>>> nicht hinbekommen habe ist:
>>>=20
>>>
>>>=20
>>> Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?
>>=20
>> Wie sieht Deine Ergebnismenge aus, das ist nur eine Spalte mit dem Text,
>> oder? Dann mast einfach ein UNION von SELECT '' und Deriner
>> Query.
>>=20
>>=20
>> Andreas
>=20
> --=20
> Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-de-allgemein
>=20

--
Cybertec Schönig & Schönig GmbH
Gröhrmühlgasse 26
A-2700 Wiener Neustadt, Austria
Web: http://www.postgresql-support.de


--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XML Export, hinzufügenvon: <?xml version

am 09.09.2011 11:33:59 von Peter Eisentraut

On tor, 2011-09-08 at 09:17 +0200, postgresql@grizzlycrm.de wrote:
>
>
>

>
>

>

>=20
> Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige,=20
> was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch=20
> nicht hinbekommen habe ist:
>=20
>
>=20
> Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?

Diese XML-Deklaration enthält die Standardwerte und kann daher
weggelassen werden. Deswegen gibt sie PostgreSQL nicht mit aus. Wenn du
sie unbedingt brauchst, dann wandele den XML-Wert nach Text um und
bastele es dir entsprechend zusammen:

=3D> select xmlelement(name foo);
xmlelement=20
------------


=3D> select '' || xmlserialize(=
content xmlelement(name foo) as text);
?column? =20
----------------------------------------------


Das Ergebnis ist dann aber vom Typ text und nicht mehr xml.

Wenn du es wieder nach xml umwandelst, dann ist die XML-Deklaration
wieder weg:

=3D> select xmlparse(content ''=
|| xmlserialize(content xmlelement(name foo) as text));
xmlparse=20
----------


Gemeines Teil. ;-)



--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XML Export, hinzufügenvon: <?xml version

am 09.09.2011 11:35:38 von Peter Eisentraut

On tor, 2011-09-08 at 11:06 +0200, Thomas Uzunoff wrote:
> Wenn=20
> ich aber eine SQL davor setze und mit UNION verbinde, kommt
> Fehlermeldung:
>=20
> ############################################################ ###########
> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
> LINE 8: XMLELEMENT (NAME general_information, xmlattributes('1.0'
> as...
> ^
> ********** Fehler **********
> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
> SQL Status:42883
> Zeichen:33
> ############################################################ ###########=
=20

Generall würde an dieser Stelle UNION ALL helfen.


--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XML Export, hinzufügenvon: <?xml version

am 09.09.2011 11:45:47 von Peter Eisentraut

On tor, 2011-09-08 at 09:17 +0200, postgresql@grizzlycrm.de wrote:=20
>
>
>

>
>

>

>=20
> Die Ausgabe des Ergebnisses funktioniert auch wunderbar. Das einzige,=20
> was dem Ergebnis noch vorangestellt werden soll, ich aber immer noch=20
> nicht hinbekommen habe ist:
>=20
>
>=20
> Kann mir jemand sagen, welchen Befehl ich dafür nutzen kann?

Diese XML-Deklaration enthält die Standardwerte und kann daher
weggelassen werden. Deswegen gibt sie PostgreSQL nicht mit aus. Wenn du
sie unbedingt brauchst, dann wandele den XML-Wert nach Text um und
bastele es dir entsprechend zusammen:

=3D> select xmlelement(name foo);
xmlelement=20
------------


=3D> select '' || xmlserialize(=
content xmlelement(name foo) as text);
?column? =20
----------------------------------------------


Das Ergebnis ist dann aber vom Typ text und nicht mehr xml.

Wenn du es wieder nach xml umwandelst, dann ist die XML-Deklaration
wieder weg:=20

=3D> select xmlparse(content ''=
|| xmlserialize(content xmlelement(name foo) as text));
xmlparse=20
----------


Gemeines Teil. ;-)




--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein

Re: XML Export, hinzufügen von: <?xml version="1.0" encoding="utf-8"?>

am 09.09.2011 13:01:15 von postgreSQL

Danke an alle, die mir weitergeholfen haben. Fast jede Antwort hat dazu=20
beigetragen, den Export zu vervollständigen.
Danke



Am 09.09.2011 11:35, schrieb Peter Eisentraut:
> On tor, 2011-09-08 at 11:06 +0200, Thomas Uzunoff wrote:
>> Wenn
>> ich aber eine SQL davor setze und mit UNION verbinde, kommt
>> Fehlermeldung:
>>
>> ############################################################ ##########=
#
>> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
>> LINE 8: XMLELEMENT (NAME general_information, xmlattributes('1.0'
>> as...
>> ^
>> ********** Fehler **********
>> FEHLER: konnte keinen Ist-Gleich-Operator für Typ xml ermitteln
>> SQL Status:42883
>> Zeichen:33
>> ############################################################ ##########=
#
>
> Generall würde an dieser Stelle UNION ALL helfen.
>

--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.o=
rg)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein