Discussion:
SQL2000 - XML File einlesen und Werte in SQL Tabelle speichern
(zu alt für eine Antwort)
Kurt Elmiger
2008-09-16 09:47:01 UTC
Permalink
Hallo

Wie kann ich mit dem SQL2000 am einfachsten XML-Files einlesen und die Werte
in SQL Tabellen speichern? Das Ziel ist es per Job/sp anfallende XML Files
automatisch zu verarbeiten.

Besten Dank im Voraus!

Gruss,
Kurt
Elmar Boye
2008-09-16 10:26:53 UTC
Permalink
Hallo Kurt,
Post by Kurt Elmiger
Wie kann ich mit dem SQL2000 am einfachsten XML-Files einlesen und die Werte
in SQL Tabellen speichern? Das Ziel ist es per Job/sp anfallende XML Files
automatisch zu verarbeiten.
Was verstehst Du unter "verarbeiten"?

Grundsätzlich kannst Du XML Daten OPENXML zerlegen:
<URL:http://msdn.microsoft.com/en-us/library/aa276847(SQL.80).aspx>

Eine Funktion zum Einlesen einer XML-Datei existiert aber nicht,
dafür gibt es Client-Funktion wie SqlXmlBulkload etc.
<URL:http://msdn.microsoft.com/en-us/library/aa286527.aspx>

Unter <URL:http://www.sqlxml.org/topics.aspx?topic=2>
findest Du mehrere Wege, die Funktionen zu nutzen.

Gruß Elmar
Kurt Elmiger
2008-09-16 11:29:01 UTC
Permalink
Hallo Elmar

Unter verabeiten meine ich folgendes:
Eine externe Applikation liefert XML Dateien (gleiche Struktur) in einen
Netzwerkordner. Ich möchte nun mit dem SQL Server2000 diese XML Dateien
öffnen und die Werte in eine SQL Tabelle schreiben. Nach einem erfolgreichem
Import könnten die XML Dateien anschliessend gelöscht werden.

Besten Dank für Deinen Feedback im Voraus.

Gruss,
Kurt
Post by Elmar Boye
Hallo Kurt,
Post by Kurt Elmiger
Wie kann ich mit dem SQL2000 am einfachsten XML-Files einlesen und die Werte
in SQL Tabellen speichern? Das Ziel ist es per Job/sp anfallende XML Files
automatisch zu verarbeiten.
Was verstehst Du unter "verarbeiten"?
<URL:http://msdn.microsoft.com/en-us/library/aa276847(SQL.80).aspx>
Eine Funktion zum Einlesen einer XML-Datei existiert aber nicht,
dafür gibt es Client-Funktion wie SqlXmlBulkload etc.
<URL:http://msdn.microsoft.com/en-us/library/aa286527.aspx>
Unter <URL:http://www.sqlxml.org/topics.aspx?topic=2>
findest Du mehrere Wege, die Funktionen zu nutzen.
Gruß Elmar
Elmar Boye
2008-09-17 07:15:13 UTC
Permalink
Hallo Kurt,
Post by Kurt Elmiger
Eine externe Applikation liefert XML Dateien (gleiche Struktur) in einen
Netzwerkordner. Ich möchte nun mit dem SQL Server2000 diese XML Dateien
öffnen und die Werte in eine SQL Tabelle schreiben. Nach einem erfolgreichem
Import könnten die XML Dateien anschliessend gelöscht werden.
Wie gestern schon geschrieben:
Mit dem SQL Server kannst Du solche Dateien nicht öffnen,
denn das ist nicht seine Aufgabe.

Bei annähernd gleichem Aufbau eignet zum Laden am besten
Post by Kurt Elmiger
dafür gibt es Client-Funktion wie SqlXmlBulkload etc.
<URL:http://msdn.microsoft.com/en-us/library/aa286527.aspx>
Gruß Elmar
Kurt Elmiger
2008-09-17 08:53:01 UTC
Permalink
Hallo Elmar

Habe ich richtig verstanden, dass ich ein externes Programm schreiben muss
und die SqlXmlBulkload Funktion zu verwenden?

Gruss,
Kurt
Post by Elmar Boye
Hallo Kurt,
Post by Kurt Elmiger
Eine externe Applikation liefert XML Dateien (gleiche Struktur) in einen
Netzwerkordner. Ich möchte nun mit dem SQL Server2000 diese XML Dateien
öffnen und die Werte in eine SQL Tabelle schreiben. Nach einem erfolgreichem
Import könnten die XML Dateien anschliessend gelöscht werden.
Mit dem SQL Server kannst Du solche Dateien nicht öffnen,
denn das ist nicht seine Aufgabe.
Bei annähernd gleichem Aufbau eignet zum Laden am besten
Post by Kurt Elmiger
dafür gibt es Client-Funktion wie SqlXmlBulkload etc.
<URL:http://msdn.microsoft.com/en-us/library/aa286527.aspx>
Gruß Elmar
Elmar Boye
2008-09-17 09:16:03 UTC
Permalink
Hallo Kurt,
Post by Kurt Elmiger
Habe ich richtig verstanden, dass ich ein externes Programm schreiben muss
und die SqlXmlBulkload Funktion zu verwenden?
Jupps. Im einfachsten Falle nimm z. B. VBScript wie im Beispiel:
<URL:http://msdn.microsoft.com/en-us/library/aa225754(SQL.80).aspx>

(und wenn die Strukturen direkte zu übertragen sind, brauchst Du
auch nicht mehr, au0er einen variablen Namen für das jeweilige
Schema zu verwenden).

Gruß Elmar

Loading...