Gewusst wie: Analysieren von XML in einer Datenbank

November 28

XML ist das Format der Wahl für die Speicherung von Daten, die zwischen verschiedenen Clients über das Internet übertragen und gelesen von Anwendungen, die nicht den Luxus einer ausgewachsenen Datenbank-Anwendung, die installiert werden müssen. Manchmal müssen Sie jedoch XML direkt in eine Datenbank zu importieren. Windows-Benutzer haben die Möglichkeit hierzu bereits auf ihren Systemen mittels Visual Basic Skript XML Bulk Load-Befehl installiert.

Anweisungen

1 Öffnen Sie einen Texteditor.

2 Fügen Sie den folgenden Code innerhalb des Text-Editors, die Microsoft XML-Massenladen Dokumentation entnommen:

Set ObjBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")

objBL.ConnectionString = "provider=SQLOLEDB.1;data Quelle = MySQLServer; Datenbank MyDatabase; = Uid = MyAccount; Pwd = MyPassword"

objBL.ErrorLogFile = "c:\error.log"

objBL.Execute "c:\customermapping.xsd", "c:\customers.xml"

Set ObjBL = Nothing

Dies lädt das XML-Massenladen-Dienstprogramm in ein Objekt namens "ObjBL" und bereitet sie zum Herstellen einer Verbindung mit Microsoft SQL Server-Datenbank mithilfe des Datenbanknamens "MyDatabase", die "MyAccount" Benutzernamen und das Kennwort "Meinkennwort." Natürlich sollten Sie diese Werte entsprechend die realen Werten für Ihre Datenbank ändern.

Für den Fall, dass etwas schief geht, wird ein Fehlerprotokoll generiert in "C:\error.log." Schließlich wird das XML-Dokument "customers.xml" geladen, in die Datenbank gemäß der Definition in dem Schema "customermapping.xsd."

3 Speichern Sie Ihre Arbeit auf dem Desktop mit dem Namen "importXML.vbs."

4 Doppelklicken Sie auf Ihrem Desktop importieren die XML-Datenbank auf Microsoft SQL Server "importXML.vbs". Wenn etwas schief geht, die Probleme in der Datei "c:\error.log" protokolliert werden, also achten Sie darauf, es zu überprüfen, nachdem das Skript beendet ist.

Tipps & Warnungen

  • XML-Massenladen wird keine Datenbanktabellen angelegt. Es wird nur die XML-Daten in eine bereits vorhandene Tabelle mit demselben Namen importieren.