Zielgruppe: Entwickler und Datenbankprogrammierer mit geringen XML-Kenntnissen, die sich mit dem Datenaustausch oder der Verwaltung von XML-Dokumenten befassen.
Seminarziel: Sie kennen unterschiedliche Speicherkonzepte für XML in nativen und relationalen Datenbanken. Sie beherrschen den Datenaustausch zwischen XML-Dokumenten und relationalen Datenbanksystemen. Sie können XML-Dokumente aus Datenbankinhalten generieren und Datenbanken durch XML-Dokumente aktualisieren.
Dauer: 3 Tage
Zusammenfassung: XML ist ein einfacher und internationaler Standard zum Datenaustausch und zur Datenhaltung. Die enorme Gestaltungsflexibilität zwingt zu systematischer Strukturierung (DTD, XML Schema), damit die XML-Dokumente systematisch ausgewertet werden können. - Zum standardisierten (plattform- bzw. technologieunabhängigen) Datenaustausch erscheint XML als temporäres Zwischenformat mit relativ kurzer Lebensdauer; die Weiterverarbeitung der Daten erfolgt mit XML-basierten Standards wie SAX, DOM, XSL, CSS, XPath oder XQuery. - Die eigentliche Datenhaltung kann in anderen Formaten erfolgen; häufig geschieht dies auf der Basis relationaler Datenbanken. Ein erster Kursschwerpunkt konzentriert sich daher auf die Frage, Datenbankinhalte in XML-Form zu verpacken und dann an berechtigte Interessenten abzugeben. Neben Datenbank-eigenen Features wie XML-Export bzw. XML-Import bieten sich hier diverse externe Wege an, etwa über Java, .NET oder ActiveX. - Der zweite Kursschwerpunkt konzentriert sich auf XML als Datenhaltungsformat. Hier werden verschiedene Ansätze aus dem Bereich nativer wie relationaler Datenbanken besprochen, insbesondere neuere Konzepte relationaler Datenbanken, XML-Dokumente in Datensätzen zu halten und in einer Kombination von SQL /XPath bzw. SQL/XQuery auszuwerten.
Grundlagen XML
XML-Syntax: Elemente und Attribute
Entitäten, ProcessingInstructions, Kommentare, Namespaces
Validation: DTDs, XML Schema
Grundlagen XPath
Grundlagen XSL
Aufbau eines Stylesheets
Einbinden von XPath in XSL
Strukturierung in Templates
Erzeugen eines XSL-Stylesheets zum XML-Datenimport in eine MySQL-Datenbank.
Grundlagen XQuery
Typkonzept, Pfadausdrücke und Abkürzungen
Einfache und erweiterte XQuery-Ausdrücke
Auswertungen von Sequenzen
FLOWR: for, let, order, where, return
Gruppierungen, Sortierungen
Nummerierungen in sortierter Abfrage
XQuery-Abfragen unter eXist
SQL und XQuery am Beispiel SQLServerExpress
Native XML-Datenbanken
Übersicht über native XML-Datenbanken
eXist: Installation
eXist: Collections anlegen
eXist: XML-Import
eXist: Abfragen, Updates, XST-Transform
Grundlagen relationaler Datenhaltung
Datenhaltung im relationalen Modell
Tabellen und Spalten (Attribute)
Referentielle Integrität
Transaktionen
Stored Procedures
Trigger
Indizes
XML und relationale Datenbanken
Unterschiede und Gemeinsamkeiten
Wann lohnt ein Umstieg von RDBMS nach XML?
Wann lohnt ein Umstieg von XML nach RDBMS?
XML-Import und -Export aus relationalen Datenbanken
Abbildung eines XML-Dokuments in RDBMS-Datensätzen
Kombinierte Abfragetechniken mit SQL und XQuery am Beispiel SQLServer
ADO.NET und XML
DataSet: XML schreiben / lesen
DataSet: XMLSchema schreiben / lesen
DataSets typisieren
Datenbank-Update mit XML
Hierarchische Verknüpfung von DataTables
gezielte Datenbankabfragen mit XML
Neuerungen in ADO.NET
Programmierungen, Consulting und Schulungen führe ich in ganz Deutschland durch bzw. meine Kunden kommen aus folgenden Regionen: Hamburg, Negenborn, Holzminden, Bevern, Stadtoldendorf, Höxter, Paderborn, Bielefeld, Herborn, Hannover, Göttingen, Kassel, Hameln, Hildesheim, Köln, Bonn, Frechen, Bochum, Dortmund, Essen, Hagen, München, Leverkusen, Augsburg, Ulm, Ingelheim, Frankfurt, Darmstadt, Wörth, Einbeck, Hanau, Ratingen, Nürnberg, Kopenhagen, Andernach, Schwäbisch Gmünd, Ettlingen, Rodgau, Lübeck, Stuttgart, Böblingen, Niederzissen, Landsberg / Lech, Bergisch-Gladbach, Berlin, Morsbach, Meerbusch, Münster, Lüneburg, Friedrichsdorf, Herten, Ahrensbök, Forchtenberg, Flensburg, Recklinghausen, Bremen, Bergheim, Osnabrück, Düsseldorf, Kamp-Lintfort, Rheine, Würzburg, Saarlouis, Saarbrücken, Erlangen, Coburg, Kulmbach, Hofheim, Gummersbach, Mainz, Wiesbaden, Bad Iburg, Wolfsburg, Wolfenbüttel, Soest, Warstein, Lauf, Rheinbach, Ahrweiler, Magdeburg, Nördlingen, Weimar, Aachen, Magdeburg, Gütersloh, Rheda-Wiedenbrück, Northeim, Leipzig, Dresden, Duisburg, Wuppertal, Mannheim, Karlsruhe, Wiesbaden, Münster, Gelsenkirchen, Mönchengladbach, Braunschweig, Seligenstadt, Chemnitz, Kiel, Schwerin, Krefeld, Halle, Freiburg, Oberhausen, Erfurt, Rostock, Hamm, Mülheim, Herne, Ludwigshafen, Solingen, Oldenburg, Neuss, Potsdam, Heidelberg, Jena, Regensburg, Ingolstadt, Heilbronn, Pforzheim, Bottrop, Offenbach, Bremerhaven, Fürth, Remscheid, Reutlingen, Moers, Koblenz, Salzgitter, Siegen, Trier, NRW, Niedersachsen, Hessen, Baden-Württemberg, Bayern, Rheinland-Pfalz, Sachsen, Thüringen