XML databases. KU Verkehrsinformatik - Datenbankkonzepte Ass.Dipl.-Ing. Fuchs Simone LV Nr , SS 2006

Größe: px
Ab Seite anzeigen:

Download "XML databases. KU Verkehrsinformatik - Datenbankkonzepte Ass.Dipl.-Ing. Fuchs Simone LV Nr 623.904, SS 2006"

Transkript

1 KU Verkehrsinformatik - Datenbankkonzepte Ass.Dipl.-Ing. Fuchs Simone LV Nr , SS 2006 XML databases Verfasser/Referent:

2 Inhaltsverzeichnis 0 Abstract Einleitung Bedeutung von XML in DAM-Systemen Digital Asset Management Realisierung eines DAM-System Zusammenspiel von XML-Dateien und relationalen DBs XML-enabled Databases Bekannte Vertreter von XML-enabled Databases XML Shredding ShreX Native XML Datenbanken Kategorien von Nativen XML-Datenbanken: Vertreter von Nativen XML-Datenbanken Native XML in DB2 Viper Anwendungsbeispiel XML in DB2 Viper: Datenbankschema: Abfragen Selektion der Fahrer des Fahrzeugs mit der ID Restriktion aufgrund eines XML-Werts XMLQuery Umwandlung von XML in SQL-Datentypen Joins von XML und nicht-xml Daten: Umwandlung von relationalen Daten in XML: Update-Statement: SQL/XML-Statements in Java : Zusammenfassung

3 0 Abstract Durch das vermehrte Aufkommen von XML-Daten in unterschiedlichen Formen wie Webcontent, Multi-Media-Daten-Header etc. ist auch der Bedarf an XML- Datenbanken zur Verwaltung von XML-Content gestiegen. Dabei gilt es nicht nur reine XML-Daten zu verwalten, sondern auch bestehende relationale Datenbanken zu integrieren. Diese Arbeit befasst sich mit der Problematik der Verwaltung von XML-Daten und der Integration von relationalen Daten mit XML-Daten. Dazu werden XML-enabled databases vorgestellt, die eine Abbildung von XML-Daten auf relationaler Ebene ermöglichen. In diesem Zusammenhang wird auch auf XML- Shredding im Speziellen auf das System ShreX, einem Framework zur Abbildung von XML-Daten auf eine beliebige relationale Datenbank - eingegangen. Ü- berdies werden Native XML-Datenbankkonzepte vorgestellt, die XML-Daten und relationale Daten verwalten können, ohne die XML-Daten auf relationale Ebene abbilden zu müssen. Im Anwendungsbeispiel wird abschließend gezeigt, wie relationale und XML-Daten in der Nativen XML-Datenbank DB2 Viper abgelegt und bearbeitet werden können. 1 Einleitung Viele Unternehmen verfügen über große Mengen an digitalem Material, bei denen Metadaten in Form von XML eine wesentliche Rolle spielen. Diese Metadaten beschreiben die Datei (z.b. Video, Foto, Präsentation etc.) und deren Inhalt (z.b. Aufnahmedatum, Belichtung, Auflösung, Inhalt, Lizenzen etc.). Dabei wird XML als Header für diese Dateien eingesetzt. Zudem bietet sich XML als ideales temporäres Austauschformat für das Web und andere Applikationen an. Eine Applikation generiert beispielsweise ein XML- Dokument, eine andere liest dieses wieder aus und verarbeitet es. Viele dieser XML- Daten sollen aber auch dauerhaft gespeichert werden können. Dabei müssten sie in Datenbanken abgelegt werden. Dies kann rein als XML erfolgen oder durch eine Abbildung der Dokumente auf eine (objekt-)relationale Datenbank. Will man durch eine Abbildung von XML-Dokumenten auf relationale Datenbanken (und vice versa) diese beiden Welten zusammenführen, so muss man sich über die Unterschiede im Klaren sein. So ist die Struktur von relationalen Daten in mehreren flachen Tabellen gespeichert, bei XML hingegen gibt es oft hierarchische, beliebig tiefe Strukturen. Außerdem besitzen Spalten in relationalen Datenbanken einen eindeutigen Wert, bei XML können Elemente jedoch mehrfach auftreten. 2 Bedeutung von XML in DAM-Systemen Die Anwendungsgebiete von XML sind sehr vielfältig. XML wird als Austauschformat für das Web und anderen Applikationen eingesetzt. Zudem spielen Metadaten in Form von XML für Digital Assets eine wesentliche Rolle. 2.1 Digital Asset Management Viele Unternehmen, vor allem im Medienbereich, verfügen über eine große Anzahl an Digital Assets in Form von Bildern, Videos, Audio-Dateien, Präsentationen, Webseiten etc., die es zu verwalten gilt. Diese Verwaltung obliegt dem Digital Asset Managament-System, das in Form von Datenbanken realisiert wird. Die Herausfor- 3

4 derung ist es die digitalen Daten zu verwalten, zu katalogisieren und zu verteilen. Im Folgenden werden die wichtigsten Faktoren, die bei der Realisierung von DAM- Systemen zu beachten sind, aufgelistet:[1] Speicherung: Die Datenträger zur Speicherung von digitalen Daten sind Alterungsprozessen unterworfen. So können digitale Daten unter Umständen nicht verfügbar oder die Ressource könnte mit zukünftigen Technologien nicht mehr kompatibel sein. Prozedurale Angelegenheiten: Viele Dokumente, wie z.b. Textdokumente, müssten erst digitalisiert werden. Dieser Prozess kann sehr arbeits- und ressourcenintensiv sein. Sicherheit: Konzerne müssen ihre digitalen Assets vor Missbrauch, Diebstahl und Schaden schützen. Copyright: Copyright-Besitzer haben das exklusive Recht Daten zu nutzen. Digitalisierung verletzt diese Rechte oft. Verteilung: Digital Assets müssen über geeignete Kommunikationskanäle zu den richtigen Benutzerinnen und Benutzern gelangen. Infrastruktur: Für DAM-Systeme ist eine stabile IT Infrastruktur notwendig. Menschliche Faktoren: Benutzerinnen und Benutzer müssen mit dem System vertraut gemacht werden. In einem Medien-Unternehmen (z.b. Werbeagentur) stellt der durchschnittliche U- ser 83 Mal pro Woche Anfragen nach Media-File, dabei schlagen allerdings 35 % der Suchanfragen fehl. Durch den Einsatz von DAM-Systemen verspricht man sich eine Senkung dieser fehlgeschlagenen Anfragen auf 5 %[1]. Um ein effektives Filemanagement zu garantieren, spielen Metadaten der Dateien in XML-Form eine wesentliche Rolle. Adobe s Extensible Metadata Platform (XMP) [2] ermöglicht es beispielsweise eigene Metadaten-Tags für ein File zu definieren. Dabei werden flexible Suchverfahren und Smart Assets, die den Kontext bei unterschiedlichen Dateiformaten, Softwareapplikationen und Datenbanken erhalten, ermöglicht. Außerdem wird der Content-Lifecycle, d. h. der Ursprungskontext einer Datei kann über mehrere Versionen erhalten werden, erhöht. Dies kann vor allem für effiziente Suchverfahren, Workflow-Automation, Rechte-Management und Verwaltung in Datenbanken nützlich sein. XMP wird in der aktuellen Version von Adobe s Creative Suite (CS 2) bereits eingesetzt. Die NASA setzte XMP zum Beispiel zur Katalogisierung von mehreren tausend Fotos nach GPS-Daten ein. 2.2 Realisierung eines DAM-System Ein Digital-Asset-Management-System sollte über folgende Funktionalitäten verfügen[1]: Indexing: Das Indexing muss umfassend sein und auch alle Metadaten, die oft den Content beschreiben, beinhalten. Rights Management: Rechte müssen verwaltet werden können. Reuse: Der Content muss leicht auffindbar und wiederverwendbar sein. Review: DAM Systeme sollen den Review von altem Content erleichtern. 4

5 Um ein DAM-System zu realisieren, bieten sich XML-Datenbanken an. Da viele Unternehmen bereits über relationale Datenbanken verfügen, sollen XML-Daten mit den Daten aus relationalen Datenbanken verknüpft werden. Welche Ansätze sich dazu eignen, wird im nächsten Abschnitt behandelt. 3 Zusammenspiel von XML-Dateien und relationalen DBs Um die Welten XML-Dokumente und relationale Datenbanken zusammen zu führen, muss man sich über die Unterschiede, die bei der Integration von XML- Daten und relationalen Datenbanken überwunden werden müssen, klar werden. Diese betreffen: [3, 4] Struktur: Relationale Daten werden in flachen Tabellen gespeichert. XML hingegen bietet die Möglichkeit eine hierarchische, beliebig tiefe Struktur aufzubauen. Diese XML-Strukturen in relationale Daten zu überführen, kann sehr komplex sein. Eindeutigkeit: In relationalen Datenbanken ist jeder Spalten/Zeilen- Kombination ein Wert zugewiesen, während bei XML-Dokumenten mehrere Attribut-Ausprägungen zulässig sind und somit Werte pro Spalte mehrfach auftreten können. Vollständigkeit: In der relationalen Welt sind Tabellen vollständig. XML ist hingegen optional und Attribute können offen sein. Die wichtigsten Ansätze, um eine Kombination aus relationalen Datenbanken und XML-Daten nutzen zu können, sind XML-enabled Databases und native XML- Datenbanken. Der Unterschied zwischen XML-enabled und native Databases ist, dass XML-enabled Databases schemen-spezifische Strukturen, die auf das XML- File zur Design-Zeit gemappt werden müssen, verwenden, während native XML Datenbanken generische Strukturen nutzen, die jedes beliebige XML-Dokument enthalten können. [1] Native XML databases können die physische Struktur sowie Kommentare, DTDs, Pls etc. verwalten. [5] XML-enabled databases können dies zwar auch, jedoch ist die Realisierung sehr umständlich und die Performance schlecht. Außerdem gibt es bei nativen XML-Datenbanken ein einheitliches Interface. Bei XML-enabled Databases muss dies nicht gewährleistet sein. Im Folgenden wird genauer auf diese Ansätze eingegangen. Zudem wird XML- Shredding vorgestellt, das es erlaubt, XML-Daten in jede beliebige relationale Datenbank zu integrieren. 3.1 XML-enabled Databases In einer XML-enabled Datenbank werden Dokumente in einzelnen Fragmenten gespeichert. Hierbei wird der XML-Content in objektrelationale Form umgewandelt und gespeichert. Diese Datenbanken haben eine eigene XML-Mapping layer, die die Speicherung und die Wiederherstellung von XML-Daten durchführt. XML SQL Utility (XSU) oder SQL mit Packages werden dazu verwendet, den ursprünglichen Inhalt zu generieren. Neben dem entstehenden Performanceverlust, können dabei auch leicht Daten verloren gehen. Der Grund dafür liegt darin, dass über ein Schema zur Designzeit definiert werden muss, wie ein XML-Dokument, das akzeptiert werden soll, auszusehen hat. Entspricht nun ein XML-Dokument nicht den Vorgaben, wird es entweder nicht akzeptiert oder Attribute, die nicht in der Schema-Definition enthalten sind, können bei der Rekonstruktion aus den relationalen Daten nicht mehr wiederhergestellt werden. [1, 5] 5

6 Die momentane XML-Lösung von Oracle und Microsoft arbeiten auf diese Weise Bekannte Vertreter von XML-enabled Databases [6] Microsoft Access: ab Version 2002 transferiert Daten von/zu XML Dokumenten über ein tabellenbasiertes Mapping. 1 Cache: von InterSystems Corp. DB2: von IBM extremedb: von McObject LLC. extremedb unterstützt XML über ein XML-Data-Binding und kann von einem Datenbankschema Methoden generieren, die neue Objekte von XML-Dokumenten erzeugt, mit bestehenden Objekten updatet. Diese Objekte werden vorzugsweise für SOAP- Nachrichten eingesetzt. PostgreSQL: von PostgreSQL Global Development Group SQL Server 2000: von Microsoft Oracle: Oracle9i unterstützt XML-Datentyp, SQL/XML, XQuery, XSLT, DOM etc. XML-Daten können entweder objektrelational oder als CLOB gespeichert werden. Ein CLOB speichert die Dokumente exakt ab, speichert jedes Dokument, kann aber nur Dokumenten-Updates durchführen, also das Dokument als Ganzes neu laden, und hat weniger Indexierungsoptionen als im objektrelationalen Modus. Der Vorteil bei Oracle ist, dass XML- Dokumente auf DOM-Level durchlaufen werden können. Dazu speichert es versteckte Spalten, in relationaler Form, ab und ist somit in die Kategorie der XML-enabled Databases einzuordnen.[6] 3.2 XML Shredding XML Shredding bietet ein Framework, das es erlaubt, XML-Daten auf jede beliebige relationale Datenbank zu mappen. Die XML-Daten werden in relationale Form gebracht und in die Datenbank geschrieben. [7] ShreX ShreX (Shredding XML) ist ein frei verfügbares System, mit dem Mappings von XML in relationale Datenbanken ermöglicht werden. Mit ShreX können eigene Mapping-Strategien angewandt werden, die auf die Applikation zugeschnitten wird. Das Mapping kann für jede beliebige Datenbank verwendet werden.[4] 1 Anmerkung: Microsoft Access ist kein Datenbanksystem, sondern ein Datenerhaltungsprogramm. 6

7 Abbildung 1: ShreX Architecture [7] In ShreX wird ein Mapping durch das Hinzufügen von Anmerkungen ins XML- Schema definiert. Diese Anmerkungen geben an, wie Elemente und Attribute in der relationalen Datenbank gespeichert werden. Der annotation processor (Abbildung 1) parst das mit Anmerkungen versehene XML-Schema, prüft die Gültigkeit des Mappings und erzeugt daraus ein relationales Schema. Die Validierung des XML- Schemas umfasst die Überprüfung auf Richtigkeit der Anmerkungen und die Uniqueness-Prüfung der einzelnen Elemente in der Tabelle. Zusätzlich kann noch überprüft werden, ob die Abbildung verlustfrei passiert. ShreX verfügt auch über eine automatische Mapping-Funktion. [4] Die Informationen zum Mapping werden im Mapping-Repository gespeichert und können wiederverwendet werden. Der Document Shredder bekommt das XML- Dokument und benutzt die Mapping API, um auf die Informationen im Mapping Repository zu zugreifen. Er vollzieht das Shredding des XML-Dokuments und befüllt die Tabellen. Außerdem verfügt der Document Shredder über einen Validierungsmechanismus, der das Input überprüft. [4] Der Query-Translator generiert SQL-Queries aus XML-Queries, die mit XPath definiert wurden. Die Mappings werden über ein XML-Schema definiert, was sie einerseits portabel macht, andererseits auch erweiterbar. Außerdem können Mappings zur Validierung herangezogen werden. Annotation attributes: [4] outline (true or false): Wenn Outline true ist, wird eine Tabelle für das entsprechende Attribut kreiert. 7

8 tablename (string):dieser String wird als Tabellenname benutzt. columnname(string): Dieser String wird als Spaltenname benutzt. sqltype (String): Dieser String überschreibt den Sqltyp der Spalte. structurescheme (KFO, Interval, Dewey): Spezifiziert die Struktur des Mappings Dewey Dezimale Klassifikation, Interval in bestimmten Intervallen; KFO kostenbasierter Ansatz für parent-child-relations edgemapping (true, false): Ist der Wert true, wird das Element und seine Nachfolger nach dem Edge-Mapping-Verfahren geshreddet. maptoclob (true, false): Ist der Wert true, wird das Element oder Attribut als CLOB-Spalte gemappt. Beispiel ShreX: Abbildung 2: Annotated movie schema [7] Abbildung 2 zeigt ein mit Anmerkungen versehenes Schema, das in das Mapping Repository geladen wird. Die Anmerkung outline=true im Element TITLE gibt an, dass dafür eine extra Tabelle mit Namen Showtitle angelegt wird. Das outline- Attribut von YEAR hingegen ist false, d. h. es wird direkt unter der Tabelle SHOW angelegt und erhält keine eigene Tabelle. Durch sqltype wird der Typ überschrieben. Das Attribut edgemapping=true im Element REVIEW wird dazu eingesetzt, um alle REVIEW-Elemente und deren Inhalt zu mappen Meistens dann, wenn die Struktur nicht im Vorhinein bekannt ist. 8

9 Abbildung 3: Relational configuration for movie schema [7] Das aus Abbildung 2 resultierende Datenbankschema ist in Abbildung 3 zu sehen. 3.3 Native XML Datenbanken In einem nativen Datenbank-Ansatz wird die gesamte XML-Datenbank als Ganzes abgespeichert. Dokumente werden in ihrem Orginalformat gespeichert, indiziert und wiederhergestellt. Die XML-Datenbank verarbeitet XML in seiner natürlichen Form, was die Performance wesentlich verbessert. Eine native XML-Datenbank definiert ein logisches Modell für ein XML-Dokument. Dementsprechend speichert sie Dokumente und stellt Dokumentabfragen. Als fundamentale Einheit dient ein XML-Dokument. Ein darunterliegendes physikalisches Speichermodell ist nicht erforderlich. Die Datenbank kann auf einer relationalen, hierarchischen oder objektorientierten Datenbank aufgesetzt bzw. in indizierten, komprimierten Files gespeichert sein. [5, 6] Kategorien von Nativen XML-Datenbanken: Native XML-Datenbanken kann man in zwei Kategorien einteilen[5]: Dokumentbasierte Native XML-Datenbank/Text-Basiertes Speichern: Eine textbasierte native XML-Datenbank speichert XML als Text, in einem Filesystem, in einem BLOB in einer relationalen Daten oder einem eigenen Textformat. Diese Datenbanken sind indiziert und können leicht von einem Knoten zum Anderen im XML-Dokument springen, was die Performance erhöht. Die Datenbank kann das ganze Dokument oder einzelne Fragmente in einem einzigen Leseprozess auslesen. Eine textbasierte XML-Datenbank entspricht einer hierarchischen Datenbank. Beim Auslesen von meheren XML-Files sind allerdings mehrere Leseprozesse notwendig. Modellbasierte Native Datenbanken/Knoten-Basiertes Speichern: Dem Dokument werden separate Knoten entnommen und in einem bestehenden Speicherbereich abgelegt. Bei Knoten-basiertem Speichern können Fragmente aus unterschiedlichen Dokumenten mit wenigen Leseprozessen kombiniert werden. Beim Auslesen eines gesamten Dokuments sind jedoch auch mehrere Leseprozesse notwendig Vertreter von Nativen XML-Datenbanken [6] 4 Suite Server: von FourThougt Open Source. 9

10 Berkeley DB XML: von Sleepycat Software Open Source. Dabei handelt es sich um eine die relationale Berkeley DB mit einem integriertem XML- Parser, XML Indizes und einer XQuery Engine. Berkeley DB XML speichert Dokumente in Containern. DBDOM: Open Source dbxml: von dbxml Group OpenSource. Ozone: von ozone-db.org OpenSource. Tamino: von Software AG kommerzielle Nutzung. Tamino XML Server inkludiert eine native XML Datenbank, eine integrierte relationale Datenbank, Sicherheitstools, Administrationssoftware. Die XML-Engine benutzt eine Data Map, die angibt wo die Daten in einem gegebenen XML-File oder auf der relationalen Datenbank liegen. Inkludiert sind DOM, JDOM, SAX, XQuery und SOAP. Timber: von der University of Michigan Open Source. Zielt vor allem auf die Integration von relationalen Datenbanken und XML ab. Xindice: von der Apache Software Foundation Open Source. Eine knotenbasierte native XML Datenbank in Java speziell für eine große Menge an kleinen XML-Dokumenten. Xindice komprimiert Dokumente, um Platz zu sparen. Die Query-Language ist XPath. Xindice verfügt über eine experimentelle Linking Language, die es dem User ermöglicht XML-Content in einem XML-Dokument zur Anfrage-Stellungszeit zu ersetzen oder einzufügen Native XML in DB2 Viper Die XML-Datenbank von IBM DB2 Codename: Viper wird neben ihrer nativen Definition auch als hybride Datenbank bezeichnet. Abbildung 4 zeigt die Architektur von DB2 Viper. Relationale Daten werden unabhängig von XML-Daten gespeichert und in einem eigenen Speicherbereich abgelegt. Abbildung 4: DB2 Viper Architecture [8] IBM hat die neue DB2 um eine native XML-Datenbank erweitert. Die Benutzerin bzw. der Benutzer kann vollständige XML-Dokumente mit voller DBMS- Unterstützung speichern. DB2 ermöglicht es, mit normalen Tabellen und XML- 10

11 Strukturen zu arbeiten. Abfragen können dabei in SQL/XML oder XQuery gestellt werden. DB2 Viper verwendet zwei separate Speicher-Mechanismen. Für die darüberliegenden Applikationen ist der Speicherort jedoch transparent, d. h. dass die Applikation sich nicht um den Speicherort kümmern muss. Außerdem können einzelne XML-Dokumente effektiv über mehrere Datenbank-Seiten gesplittet werden. [8] Logical storage XML-Dokumente werden in DB2-Tabellen gespeichert, wobei sie eine oder mehrere XML-Datentypen haben können. DB2 speichert und manipuliert XML-Daten in geparster Form, wie es die hierarchische Struktur des XML-Dokuments vorschreibt. Dabei benutzt es Bäume und Knoten, um die XML-Daten zu speichern. DB2 behält die gesamte interne Struktur des XML-Dokuments bei und wandelt Tag-Names und andere Informationen in Integer-Values um. Dadurch verspricht sich IBM mehr Query-Performance und weniger Speicherplatzbedarf. Außerdem splittet DB2 Teile des Dokuments automatisch auf, damit diese Teile über mehrere Datenbank-Seiten verwendet werden können. [9] Indexing DB2 ermöglichte eine schnelle Indexierung für XML-Daten über normales SQL- DDL (Create Index). Zusätzlich kann der Benutzer bzw. die Benutzerin ein XML- Pattern (ähnlich zu XPath) definieren, das die wichtigen Informationen aus dem XML-Dokument definiert. Dabei ist zu beachten, dass eine Zeile aus der Tabelle eventuell in mehreren XML- Index-Einträgen resultiert, da XML-Dokumente mehrere gleichnamige Knoten enthalten können. DB2 verwendet Volltext-Indizes, um die Such-Performance zu erhöhen. [9] Query Language Abfragen könnnen bei DB2 Viper mittels SQL oder XQuery gestellt werden. DB2 hat 2 Language-Parser, einen für XQuery und einen für SQL (sh. Abbildung 4). Beide erzeugen jedoch eine gemeinsame, sprachunabhängige, interne Repräsentation der Query, was beiden Abfragesprachen die gleichen Optimierungstechniken ermöglicht. DB2 ermöglicht es außerdem XML-Files nach gewissen Schemata zu validieren. [9] Mit DB2 Viper wurden 15 SQL/XML-Funktionen implementiert, die Suchen innerhalb von XML-Dokumenten, Konvertierung von relationalen Daten in XML, Konvertierung von XML-Daten zu relationalen Daten etc. ermöglichen. Die Wichtigsten sind: xmlexists - Resultate werden nach einem bestimmten XML-Element-Wert eingeschränkt. xmlquery Mit XMLQuery wird eine Query auf eine XML-Datei durchgeführt. xmltable erzeugt aus XML-Daten eine relationale Tabelle. xmlelement erzeugt aus relationalen Daten ein XML-Dokument xmlparse parst Elemente aus einem XML-File, um ein Update oder Delete durchführen zu können 11

12 4 Anwendungsbeispiel XML in DB2 Viper: Im Anwendungsbeispiel wird ein Autofeedbacksystem mit DB2 Viper vorgestellt. Das Autofeedbacksystem speichert Fehlermeldungen eines Autos als XML-Datei und überträgt diese Daten per UMTS/EDGE an den Hersteller/Vertriebspartner. Dieser verfügt über eine Kundendatenbank, die das Auto einem Kunden zuordnen kann. Aus Komplexitätsgründen wird angenommen, dass ein Kunde nur ein Auto besitzt. 4.1 Datenbankschema: Das Datenbankschema besteht aus einer relationalen Datenbank mit den Tabellen Fahrzeug und Kunde. create table fahrzeug( id int primary key not null, modellname varchar(30), variante int, error_reports xml) create table kunde( id name fahrzeug_id kontaktinfos int primary key not null, varchar(50), int, xml) Weiters werden XML-Dateien zu Autos und Kunden abgelegt: <error_report> <id>512.18b</id> <bezeichnung>abs ausgefallen</bezeichnung> <kunde_id>43</client_id> </error_report> <kontakt> <adresse> <strasse>sponheimerstr. 2/1/11</strasse> <plz>9020</plz> <ort>klagenfurt</ort> <land>österreich</land> </adresse> <telefon> <privat> </privat> </telefon> </kontakt> 12

13 4.2 Abfragen Selektion der Fahrer des Fahrzeugs mit der ID 144 Eine Selektion der Kunden, die ein Fahrzeug mit der ID 144 fahren, werden mit einem normalen SQL-Statement ausgelesen. Select name, contactinfo from kunde where fahrzeug_id=144 Als Ergebnis werden relationale und XML-Daten geliefert: <kontakt> <adresse> <strasse>sponheimerstr. 2/1/11</strasse> <plz>9020</plz> <ort>klagenfurt</ort> <land>österreich</land> </adresse> <telefon> <privat> </privat> </telefon> </kontakt> Restriktion aufgrund eines XML-Werts Selektion der Fahrer der Fahrzeuge mit der ID 144 und dem error_report mit der id b select k.name, k.kontaktinfo from kunde k, fahrzeug f where k.fahrzeug_id=144 and f.id=144 and xmlexists( $c/error_report[id= ] passing f.error_reports as c ) Mit der xmlexists-anweisung werden alle Fahrer des Fahrzeugs 144 bei denen die Fehlermeldungen mit der ID b (ABS ausgefallen) aufgetreten ist, selektiert. Diese könnten zum Beispiel über eine Rückrufaktion verständigt werden. Als Ergebnis wird Folgendes geliefert: <kontakt> <adresse> <strasse>sponheimerstr. 2/1/11</strasse> <plz>9020</plz> <ort>klagenfurt</ort> <land>österreich</land> 13

14 </adresse> <telefon> <privat> </privat> </telefon> </kontakt> XMLQuery Selektion aller Adressen von allen Fahrern des Fahrzeugs mit der ID 144. Mit der xmlquery-anweisung werden XML-Daten selektiert. Das passing Attribut gibt den Pfad der XML-Datei in die Pfadvariable $c. select xmlquery( $c/kontakt/ passing kontaktinfos as $c) from clients where fahrzeug_id=144 Als Ergebnis werden XML-Tags in folgender Form geliefert: Das Problem hierbei ist, dass auch leere Tags ausgegeben werden, werden bei einem Kunden keine -Adresse existiert. Um dies zu verhindern wird genau eine -Adresse von allen Fahrern mit einem bestimmten Fahrzeug auslesen, sofern eine -Adresse existiert. select xmlquery( $c/kontakt/ [1] passing kontaktinfos as $c) from clients where fahrzeug_id=144 and xmlexists( $c/kontakt/ passing kontaktinfos as c ) Mit dem [1]-attribut wird genau eine -Adresse selektiert. Mit der xmlexists-anweisung wird überprüft, ob eine Umwandlung von XML in SQL-Datentypen XML-Elemente können in traditionelle SQL-Datentypen umgewandelt werden. Das folgende Statement liefert alle -Adressen der Kunden aus Österreich und speichert diese in einer Tabelle: select k.name, i. from kunde k, xmltable( $c/kontakt passing kontaktinfos as c columns i. varchar(50) path [1] ) as i where xmlexists( $c/kontakt/ passing kontaktinfos as c ) 14

15 Mit der xmltable-anweisung werden XML-Tags in Tabellenform gebracht. columns gibt an wie die Spalten bezeichnet werden und welches Attribut ( [1]) in die Spalte geschrieben werden. Als Ergebnis wird folgende Tabelle zurückgegeben: Name Doris Weidner Joins von XML und nicht-xml Daten: Das Statement gibt eine Liste aller Fahrer der Fahrzeuge 144 mit der Fehlermeldung b aus. select k.name from kunde k, fahrzeug f xmltable( $c/error_report passing f.error_reports as c columns e.kunden_id int path kunde_id ) as e where f.id=144 and xmlexists( $c/error_report[id= b ] passing f.error_reports as c ) and k.id=e.kunden_id Umwandlung von relationalen Daten in XML: Das folgende Statement erzeugt eine XML-Datei aller Fahrzeuge. Mit der xmlelement-anweisung werden XML-Tags mit Namen und Attributen erzeugt. select xmlelement (name fahrzeug, xmlelement (name id, id), xmlelement (name modell, modellname)) from fahrzeug Folgende XML-Datei wird erzeugt: <fahrzeug> <id>144</id> <modell>c4</modell> </fahrzeug> Update-Statement: Das Statement fügt dem Kunden mit der ID 43 eine weitere -Adresse hinzu. Mit der xmlparse-anweisung wird die Stelle geparst, in der die -Adresse eingefügt werden soll. update kunde set kontaktinfo=( xmlparse(document where id = SQL/XML-Statements in Java : 15

16 DB2 Viper mit SQL/XML lässt sich auf übliche Form in Java-Code verwenden. String selectstmt = null; String query = null; ResultSet rs = null; Connection conn = null; String zipcode = "9020"; try {... // erstelle eine Verbindung zur Datenbank (JDBC)... query = "select name from kunde where xmlexists(" + "'$c/client/adresse[plz=$x]' "+ "passing clients.kontaktinfo AS \"c\", cast(? as char(5)) as \"x\" )"; //führe Anfrage durch selectstmt = conn.preparestatement(query); selectstmt.setstring(1, zipcode); // execute the statement rs = selectstmt.executequery(); // durchlaufe das ResultSet... // schließe die Verbindung... } catch (Exception e) {... } 5 Zusammenfassung Durch den enormen Zuwachs von Media-Files in Unternehmen und der signifikanten Bedeutung von XML im Webbereich, ist der Bedarf nach XML-Datenbanken gestiegen, um diese XML-Daten (wie z.b. Metadaten) persistent zu halten und zu verwalten. Vielfach existieren nicht nur reine XML-Daten, sondern auch relationale Datenbanken, die mit XML-Daten zusammengeführt werden sollen. Da XML tiefe Strukturen hat und unter Umständen nicht eindeutig und vollständig ist, geschieht die Zusammenführung mit relationalen Datenbanken nicht problemlos. Die Integration kann in XML-enabled Databases, mittels XML-Shredding oder in Nativen XML-Datenbanken durchgeführt werden. Während XML-enabled databases und XML-Shredding die XML-Daten in relationale Daten umwandeln, können Native XML-Datenbanken XML-Daten unabhängig von den relationalen Daten aufbewahren. Der Vorteil von Nativen XML-Datenbanken liegt vor allem in der Performanz. Zudem kann die ursprüngliche XML-Datei vollständig rekonstruiert werden, was bei XML-enabled Databases und XML-Shredding nicht unbedingt gewährleistet ist. 16

17 Literaturverzeichnis: [1] Digital Asset Management Using A Native XML Database Implementation. S. Natu, J. Mendonca CITC4 03 [2] XMP. Adobe aus : [3] Relational Databases for Querying XML Documents: Limitations and Opportunities. J. Shanmugasundaram, K. Tufte, G. He, C. Zhang, D. DeWitt, J. Naughton Proceedings of the 25th VLDB Conference. [4] A Comprehensive Solution to the XML-to-Relational Mapping Problem. S. Amer-Yahia, F. Du, J. Freire WIDM 04. [5] XML and Databases. R. Bourret aus: [6] XML-Databaseproducts. R. Bourret aus: [7] ShreX: Managing XML Documents in Relational Databases. F. Du, S. Amer-Yahia, J. Freire [8] DB2 Viper Specification. IBM aus: 306.ibm.com/software/data/db2/udb/viper/xml.html [9] XML Guide DB2 Viper. IBM S

XML - Extensible Markup Language. Agenda - Oracle XML DB

XML - Extensible Markup Language. Agenda - Oracle XML DB Architektur und Funktionalitäten der Oracle XML DB - ein Überblick mit ausgewählten praktischen Beispielen - im Rahmen des 17. Workshop Grundlagen von Datenbanken 2005 in Wörlitz Annegret Warnecke Senior

Mehr

Validating XML Parser. Application. XML-Datei XML-Datei XML-Datei XML-Datei XML-Datei. XML-Schema oder DTD

Validating XML Parser. Application. XML-Datei XML-Datei XML-Datei XML-Datei XML-Datei. XML-Schema oder DTD XML-Schema oder DTD XML-Datei XML-Datei XML-Datei XML-Datei XML-Datei Validating XML Parser Application SQL 2003 Part 14: XML-Related Specifications (SQL/XML) This part of ISO/IEC 9075 defines ways in

Mehr

Datenbanken und XML Passt das?

Datenbanken und XML Passt das? IBM Software Group Datenbanken und XML Passt das? Manfred Päßler IBM Software Group Germany manfred.paessler@de.ibm.com 4 Juli 2007, Berlin 2 XML vs. Relational

Mehr

XML in kommerziellen Datenbanksystemen. Vortrag im Rahmen des Seminares: XML Datenbanken Cordula Bauer

XML in kommerziellen Datenbanksystemen. Vortrag im Rahmen des Seminares: XML Datenbanken Cordula Bauer XML in kommerziellen Datenbanksystemen Vortrag im Rahmen des Seminares: XML Datenbanken Cordula Bauer Thematik: Untersucht werden MS SQL Server, Oracle und DB2 Alle drei Anbieter haben XML in ihre bestehenden,

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken

1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken 1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken Grundlagen: Datenbank im XML-Kontext Einsatzszenarien MS SQL Server und Oracle Datenbank im

Mehr

Einführung in die Informatik II

Einführung in die Informatik II Einführung in die Informatik II Die Structured Query Language SQL Prof. Dr. Nikolaus Wulff SQL Das E/R-Modell lässt sich eins zu eins auf ein Tabellenschema abbilden. Benötigt wird eine Syntax, um Tabellen

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,

Mehr

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at DB2 & SQL E I N F Ü H R U N G T U N I N G O P T I M I E R U N G S E C R E T S ANDREAS PROUZA andreaspr@aon.at andreas@prouza.at http://www.prouza.at Wien, 2015-03-27 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis...

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

Allgemeines. veröffentlicht unter http://www.profv.de/uni/ lizensiert unter. Creative Commons BY-SA 3.0. XQuery in MS SQL Server 2005

Allgemeines. veröffentlicht unter http://www.profv.de/uni/ lizensiert unter. Creative Commons BY-SA 3.0. XQuery in MS SQL Server 2005 Volker Grabsch 14. Januar 2008 Allgemeines veröffentlicht unter http://www.profv.de/uni/ lizensiert unter Creative Commons BY-SA 3.0 Quelle Dieser Vortrag basiert auf dem Paper XQuery Implementation in

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Cassandra Query Language (CQL)

Cassandra Query Language (CQL) Cassandra Query Language (CQL) Seminar: NoSQL Wintersemester 2013/2014 Cassandra Zwischenpräsentation 1 Gliederung Basic facts Datentypen DDL/DML ähnlich zu SQL Besonderheiten Basic facts CQL kurz für

Mehr

Einführung in PHP 5 und IBM DB2

Einführung in PHP 5 und IBM DB2 Einführung in PHP 5 und IBM DB2 Webapplikationen mit PHP 5.2 und IBM DB2 PHP Conference 2006-08.11.2006 Themenübersicht PHP 5.2 und Datenbanken PDO Warum IBM DB2? PHP und IBM DB2 Installation / Konfiguration

Mehr

10. XML und XQuery. Prof. Dr.-Ing. Wolfgang Lehner

10. XML und XQuery. Prof. Dr.-Ing. Wolfgang Lehner 10. XML und XQuery Prof. Dr.-Ing. Wolfgang Lehner XML in DB2 XML in DB2 vor Version 9 als CLOB mit XML-Extender: Dekomposition von XML-Dokumenten auf relationale Tabellen XML in DB2 ab Version 9 Datentyp

Mehr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale

Mehr

A Generic Database Web Service for the Venice Lightweight Service Grid

A Generic Database Web Service for the Venice Lightweight Service Grid A Generic Database Web Service for the Venice Lightweight Service Grid Michael Koch Bachelorarbeit Michael Koch University of Kaiserslautern, Germany Integrated Communication Systems Lab Email: m_koch2@cs.uni-kl.de

Mehr

Relationale Datenbanken Kursziele

Relationale Datenbanken Kursziele Relationale Datenbanken Kursziele DB Grundlagen Daten-Modellierung Relationales Modell und DB => Praxis: Mit SQL als Anfragesprache Mit MySQL als DB RDB 1-1 Kursinhalt (Tage) 1. DB Einleitung / Entity-Relationship

Mehr

ORACLE und IBM DB2 Datentypen 14.12.2011

ORACLE und IBM DB2 Datentypen 14.12.2011 1/27 ORACLE und IBM DB2 Datentypen PHP-User-Group Stuttgart 14.12.2011 ORACLE Datentypen ein Überblick IBM DB2 Datentypen ein Überblick 2/27 ORACLE und IBM DB2 Datentypen Wer Wer bin bin ich ich?? Thomas

Mehr

PostgreSQL im praktischen Einsatz. Stefan Schumacher

PostgreSQL im praktischen Einsatz. Stefan Schumacher PostgreSQL im praktischen Einsatz 2. Brandenburger Linux Infotag 2005 Stefan Schumacher , PGP Key http:/// $Header: /home/daten/cvs/postgresql/folien.tex,v 1.11 2005/04/25

Mehr

SINT Rest App Documentation

SINT Rest App Documentation SINT Rest App Documentation Release 1.0 Florian Sachs September 04, 2015 Contents 1 Applikation 3 2 Rest Service 5 3 SOAP Service 7 4 Technologiestack 9 5 Deployment 11 6 Aufgabe 1: Google Webservice

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

Lerox DB/2 Datenbankreferenz in QlikView für IBM System AS/400, iseries i5, System i

Lerox DB/2 Datenbankreferenz in QlikView für IBM System AS/400, iseries i5, System i Lerox DB/2 Datenbankreferenz in QlikView für IBM System AS/400, iseries i5, System i Inhaltsverzeichnis Überblick... 3 Die QlikView Applikation im Kontext... 4 Technische Rahmenbedinungen... 5 Funktionelle

Mehr

Präsentation zum Thema XML Datenaustausch und Integration

Präsentation zum Thema XML Datenaustausch und Integration Sebastian Land Präsentation zum Thema XML Datenaustausch und Integration oder Warum eigentlich XML? Gliederung der Präsentation 1. Erläuterung des Themas 2. Anwendungsbeispiel 3. Situation 1: Homogene

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C3: Structured Query Language Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können elementaren

Mehr

Transaktionen in der Praxis. Dr. Karsten Tolle

Transaktionen in der Praxis. Dr. Karsten Tolle Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Schlagworte Autor: Klaus Friemelt, MT AG dynamisches BULK SQL, VARCHAR2-indizierte PL/SQL-Tabellen Einleitung Mit den letzten

Mehr

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Yellowbill Adapter Spezifikationen Voraussetzungen Datum : 22.08.2013 Version : 1.0.0.2 22.08.2013 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung...3 2 Architektur...3 2.1 Grundsätze

Mehr

Einführung in SQL Datenbanken bearbeiten

Einführung in SQL Datenbanken bearbeiten Einführung in SQL Datenbanken bearbeiten Jürgen Thomas Entstanden als Wiki-Buch Bibliografische Information Diese Publikation ist bei der Deutschen Nationalbibliothek registriert. Detaillierte Angaben

Mehr

NATIVE XML DATENBANKEN. Claude Eisenmann 2. Juni 2005

NATIVE XML DATENBANKEN. Claude Eisenmann 2. Juni 2005 NATIVE XML DATENBANKEN Claude Eisenmann 2. Juni 2005 Inhaltsverzeichnis EINLEITUNG Historie Motivation Zwei Varianten: XML-fähige Datenbanken oder native XML Datenbanken DIE XML-STANDARDS XML-FÄHIGE DATENBANKEN

Mehr

Kapitel DB:VI (Fortsetzung)

Kapitel DB:VI (Fortsetzung) Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus

Mehr

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Neue Technologien effizient nutzen Ehningen, 3. Juli 2014 Rodney Krick rk@aformatik.de aformatik Training & Consulting GmbH & Co. KG

Mehr

MySQL Queries on "Nmap Results"

MySQL Queries on Nmap Results MySQL Queries on "Nmap Results" SQL Abfragen auf Nmap Ergebnisse Ivan Bütler 31. August 2009 Wer den Portscanner "NMAP" häufig benutzt weiss, dass die Auswertung von grossen Scans mit vielen C- oder sogar

Mehr

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken

Mehr

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate Hibernate Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen Nabil janah 1 Hibernate Inhalt Hibernate allgemeines Vorteile von Hibernate Hibernate-Architektur

Mehr

Objekt-relationales Mapping und Performance-Tuning

Objekt-relationales Mapping und Performance-Tuning Objekt-relationales Mapping und Performance-Tuning Thomas Krüger tkrueger@vanatec.com Agenda Wege um Daten zu lesen Wege um Daten zu modellieren Wege um Datenbanken effizient zu nutzen 2 2 Wege, Daten

Mehr

Spezifikationen und Voraussetzung

Spezifikationen und Voraussetzung Projekt IGH DataExpert Paynet Adapter Spezifikationen Voraussetzungen Datum : 21.07.08 Version : 1.0.0.2 21.07.2008 Seite 1 von 7 Inhaltsverzeichnis 1 Einleitung... 3 2 Architektur... 3 2.1 Grundsätze

Mehr

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index!

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index! 1/40 PHP-User-Group Stuttgart 14.01.2009 Warum Datenbanken einen Hals bekommen und was sich dagegen tun lässt. Tuning und Performancesteigerung ohne zusätzliche Hardware. Ein. Loblied auf den Tabellen-Index!

Mehr

Java und Datenbanksysteme Datenbankanbindung mit JDBC

Java und Datenbanksysteme Datenbankanbindung mit JDBC Java und Datenbanksysteme Datenbankanbindung mit JDBC 30.05.2001 Stefan Niederhauser sn@atelier-w.ch 1-Einführung Datenbanksysteme Java und Datenbanken: JDBC Geschichte der JDBC-Versionen Vergleich von

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

XML DB Vorlesung Ulrike Schwinn Teil 3

<Insert Picture Here> XML DB Vorlesung Ulrike Schwinn Teil 3 XML DB Vorlesung Ulrike Schwinn Teil 3 Agenda XQuery-Abfragesprache Query Rewrite XMLTYPE- Tabellen und Views Speicherform Binary XML Vergleich der Speicherformen Operationen im Überblick

Mehr

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11 Datenbanksysteme WS 05/ 06 Gruppe 12 Martin Tintel Tatjana Triebl Seite 1 von 11 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Datenbanken... 4 2.1. Oracle... 4 2.2. MySQL... 5 2.3 MS

Mehr

Configuration Management mit Verbosy 17.04.2013 OSDC 2013. Eric Lippmann www.netways.de

Configuration Management mit Verbosy 17.04.2013 OSDC 2013. Eric Lippmann www.netways.de Configuration Management mit Verbosy 17.04.2013 OSDC 2013 Eric Lippmann Kurzvorstellung NETWAYS Expertise OPEN SOURCE SYSTEMS MANAGEMENT OPEN SOURCE DATA CENTER Monitoring & Reporting Configuration Management

Mehr

Das Redaktionssystem UCMS. Beschreibung Technisches Profil

Das Redaktionssystem UCMS. Beschreibung Technisches Profil 1/6 CONTENTMANAGEMENTSYSTEM UCMS 03.12.08 Das Redaktionssystem UCMS Beschreibung Technisches Profil Das vorliegende Dokument gibt einen Überblick über das System und geht auf die Ankopplung oder Integration

Mehr

Dateisysteme mit Plugin-Funktion

Dateisysteme mit Plugin-Funktion Dateisysteme mit Plugin-Funktion Basierend auf Reiser 4 unter Linux http://llugb.amsee.de/logo.gif Ausgearbeitet und vorgetragen von Michael Berger 1/23 Agenda Die Idee Dateisysteme mit Plugin-Funktion

Mehr

Datenbankzugriff mit JDBC

Datenbankzugriff mit JDBC Java: Kapitel 8 Datenbankzugriff mit JDBC Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Überblick über Kapitel 8 Einführung in SQL und JDBC Verbindung zur Datenbank

Mehr

Übung 1: Ein Website News-System mit MySQL

Übung 1: Ein Website News-System mit MySQL Übung 1: Ein Website News-System mit MySQL In der Vorübung haben wir bereits mit Hilfe eines ERMs den Datenbankentwurf erstellt und daraus die folgenden Tabellen abgeleitet: Nun muss diese Datenbank in

Mehr

3 Indizes. 3.1 Indexarchitektur von SQL Server. SQL Server 2008: Datenbankentwicklung

3 Indizes. 3.1 Indexarchitektur von SQL Server. SQL Server 2008: Datenbankentwicklung 3 Indizes 3.1 Indexarchitektur von SQL Server Die folgende Abbildung zeigt die Organisationsstruktur einer Tabelle. Eine Tabelle befindet sich in einer oder mehreren Partitionen, und jede Partition enthält

Mehr

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken.

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Vorlesungsteil SQL Grundlagen - 1 / 8 - SQL SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Auf einem Server (Rechner im Netz, der Dienste

Mehr

WhitePaper. Mai 2012. BIA Business Intelligence Accelerator. Markus Krenn Geschäftsführer Mail: m.krenn@biaccelerator.com

WhitePaper. Mai 2012. BIA Business Intelligence Accelerator. Markus Krenn Geschäftsführer Mail: m.krenn@biaccelerator.com WhitePaper BIA Business Intelligence Accelerator Mai 2012 Markus Krenn Geschäftsführer Mail: m.krenn@biaccelerator.com BIA Business Intelligence Accelerator GmbH Softwarepark 26 A-4232 Hagenberg Mail:

Mehr

NoSQL mit Postgres 15. Juni 2015

NoSQL mit Postgres 15. Juni 2015 Tag der Datenbanken 15. Juni 2015 Dipl.-Wirt.-Inform. Agenda l Vorstellung l Marktübersicht l Warum PostgreSQL? l Warum NoSQL? l Beispielanwendung Seite: 2 Vorstellung Dipl.-Wirt.-Inform. [1990] Erste

Mehr

1 Software Engineering 1

1 Software Engineering 1 1 Software Engineering 1 XML 1.1 XML Extensible Markup Language Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdaten Wird für den Datenaustausch/Speicherung benutzt

Mehr

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Informationen zur Datenbank 1. Definition 1.1 Datenbank-Basis Eine Datenbank-Basis ist eine Sammlung von Informationen über Objekte (z.b Musikstücke, Einwohner,

Mehr

Objektrelationale, erweiterbare Datenbanken

Objektrelationale, erweiterbare Datenbanken Objektrelationale, erweiterbare Datenbanken Wintersemester 2003/2004 Vorlesung: Mittwoch, 15:15-17:00 Uhr IFW A32 Übung: Mittwoch, 17:15-18:00 Uhr IFW A32 Dozent: Dr. Can Türker IFW C47.2 Email: WWW: tuerker@inf.ethz.ch

Mehr

Acrolinx IQ. Verbindungen mit externen Terminologiedatenbanken 2.9

Acrolinx IQ. Verbindungen mit externen Terminologiedatenbanken 2.9 Acrolinx IQ Verbindungen mit externen Terminologiedatenbanken 2.9 2 Inhalt Einleitung 3 Über diesen Leitfaden...3 Verbinden mit externen Terminologiedatenbanken 4 Erstellen von Sicherungen vorhandener

Mehr

Business Intelligence Praktikum 1

Business Intelligence Praktikum 1 Hochschule Darmstadt Business Intelligence SS 2014 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 07.05.2014 Business Intelligence Praktikum

Mehr

Acrolinx IQ. Verbindung mit einer externen Terminologiedatenbank herstellen 2.7

Acrolinx IQ. Verbindung mit einer externen Terminologiedatenbank herstellen 2.7 Acrolinx IQ Verbindung mit einer externen Terminologiedatenbank herstellen 2.7 2 Inhalt Einleitung 3 Über diesen Leitfaden...3 Verbinden mit externen Terminologiedatenbanken 4 Erstellen von Sicherungen

Mehr

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012 Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch

Mehr

ISTEC.MIP Messdaten-Integrations-Plattform

ISTEC.MIP Messdaten-Integrations-Plattform ISTEC.MIP Messdaten-Integrations-Plattform Dr.-Ing. Carsten Folie 1 ISTEC Firmenprofil unabhängiges Software- und Systemhaus seit 1982 erfolgreich am Markt ca. 60 festangestellte Mitarbeiter (Informatiker,

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Dokumentation zur Anlage eines JDBC Senders

Dokumentation zur Anlage eines JDBC Senders Dokumentation zur Anlage eines JDBC Senders Mithilfe des JDBC Senders ist es möglich auf eine Datenbank zuzugreifen und mit reiner Query Datensätze auszulesen. Diese können anschließend beispielsweise

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Dokumentation zum Projekt Mail-Adapter in SAP PI 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Inhalt 1. Einleitung... 2 2. Vorgehen... 3 1. Datentyp für die Mail einrichten... 3 2. Message Typen

Mehr

Übung: Data Warehousing und Data Mining

Übung: Data Warehousing und Data Mining Übung: Data Warehousing und Data Mining Sebastian Wandelt 20. Oktober 2011 wandelt@informatik.hu-berlin.de Überblick Organisatorisches Kurze Einführung JDBC PL/SQL 1. Aufgabenblatt Ablauf des Semesters

Mehr

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs Betrifft Art der Info Quelle WHERE Klausel Generierung mit.net und Oracle Technical Info Aus unserer Projekterfahrung und Architektur-Kurs Where ist the WHERE? Der Artikel untersucht die Möglichkeiten,

Mehr

Erste Schritte, um selber ConfigMgr Reports zu erstellen

Erste Schritte, um selber ConfigMgr Reports zu erstellen Thomas Kurth CONSULTANT/ MCSE Netree AG thomas.kurth@netree.ch netecm.ch/blog @ ThomasKurth_CH Erste Schritte, um selber ConfigMgr Reports zu erstellen Configuration Manager Ziel Jeder soll nach dieser

Mehr

Einführung in die Software-Umgebung

Einführung in die Software-Umgebung Ortsbezogene Anwendungen und Dienste WS2011/2012 Einführung in die Software-Umgebung Die Software-Umgebung Zentrale Postgres-Datenbank mit Geodaten von OpenStreetMap: Deutschland: 13 mio. Datensätze Topologie-Informationen

Mehr

Microsoft SQL Server 2000: Architektur

Microsoft SQL Server 2000: Architektur Microsoft SQL Server 2000: Architektur Anwendung XML-Dokumente Internet Information Server (IIS) ADO Middleware SQLOLEDB MS SQL Server 2000 Datenbank 11-59 Abbildung von XML auf Datenbanken Drei Varianten

Mehr

Download:.../~rieche. gehalten am 2. Februar 2004. Stephan Rieche. Vortrag. Thema: Index Selection. von. Seminar Advanced Data Warehouse

Download:.../~rieche. gehalten am 2. Februar 2004. Stephan Rieche. Vortrag. Thema: Index Selection. von. Seminar Advanced Data Warehouse Seminar Advanced Data Warehouse Thema: Index Selection Vortrag von Stephan Rieche gehalten am 2. Februar 2004 Download:.../~rieche Inhalt des Vortrages 1. Einleitung - Was ist das Index Selection Problem?

Mehr

Von ODBC zu OLE DB. Neue Möglichkeiten der Datenintegration. Harald Gladytz, Team Vertrieb ESRI Niederlassung Leipzig

Von ODBC zu OLE DB. Neue Möglichkeiten der Datenintegration. Harald Gladytz, Team Vertrieb ESRI Niederlassung Leipzig Von ODBC zu OLE DB Neue Möglichkeiten der Datenintegration Harald Gladytz, Team Vertrieb ESRI Niederlassung Leipzig Von ODBC zu OLE DB Begriffsbestimmung ODBC, OLE DB, COM, ADO... Unterschiede zwischen

Mehr

Object Relational Mapping Layer

Object Relational Mapping Layer Object Relational Mapping Layer Views Controlers Business logic GUI OO-application logic Object-relational-Mapping Relational DBMS PHP (propel) 1/18 Propel - Persistance Layer OR-Mapper für PHP Portierung

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

XI JDBC/IDOC Szenario

XI JDBC/IDOC Szenario XI JDBC/IDOC Szenario Implementierung eines Szenarios zum Verteilen von Kreditorenstammdaten mit dem JDBC-Adapter und dem IDOC- Adapter Agenda Verteilungsszenario Eigenschaften JDBC Adapter Eigenschaften

Mehr

Android Java Specifics / Basic IO

Android Java Specifics / Basic IO Dalvik virtual machine Registermaschine anstelle einer Stackmaschine Optimiert für geringen Speicherverbrauch Umwandlung von.class Dateien in.dex-format mit Hilfe von dx Jedes Programm läuft als eigener

Mehr

Archive / Backup System für OpenVMS

Archive / Backup System für OpenVMS Archive / Backup System für OpenVMS DECUS Symposium 2002 Bonn Vortrag-Nr. 3C04 Günther Fröhlin Compaq Computer Corporation Colorado Springs, USA 1 Highlights V4.0 Auslieferung Januar 2002 Hauptversion

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale Datenbanken Datenbankgrundlagen Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

DB2 SQL, der Systemkatalog & Aktive Datenbanken

DB2 SQL, der Systemkatalog & Aktive Datenbanken DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog

Mehr

Datenbank Anbindung. Arthur Zaczek. Nov 2014

Datenbank Anbindung. Arthur Zaczek. Nov 2014 Arthur Zaczek Nov 2014 1 Datenbank Anbindung 1.1 Übersicht Datenbankanbindung mit JDBC und ADO.NET. 1.2.NET ADO.NET Kein Treiberkonzept. Jede Datenbank hat eigenes Set an Klassen. Meistens wird für nur

Mehr

Programmieren II. Relationale Datenbanken. Vorlesung 07. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011.

Programmieren II. Relationale Datenbanken. Vorlesung 07. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 26 Datenbanken SQL-Grundlagen JDBC SQL-Constraints 2 / 26 Relationale Datenbanken Ein Datenbanksystem ist ein System zur

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Foreign Data Wrappers

Foreign Data Wrappers -Angebot Foreign Data Wrappers Postgres ITos GmbH, CH-9642 Ebnat-Kappel Swiss Postgres Conference 26. Juni 2014 Foreign Data Wrapper Postgres -Angebot Foreign Data Wrapper? Transparente Einbindung (art-)fremder

Mehr

Gliederung und Einordnung

Gliederung und Einordnung Gliederung und Einordnung 1. Objektorientierte Programmierung mit Object Pascal (5. Studienbrief, Kapitel 5) 9.4. + 16.4. 2. Software-Bausteine am Beispiel der Delphi-Komponenten (5. Studienbrief, Kapitel

Mehr

2 7 Erweiterungen. 7.1 Prozess-Kommunikation mit Datenbanken

2 7 Erweiterungen. 7.1 Prozess-Kommunikation mit Datenbanken 2 7 Erweiterungen 7 Erweiterungen 7.1 Prozess-Kommunikation mit Datenbanken Im Buch Einstieg in das Programmieren mit MATLAB wird im Abschnitt 4.8 das Thema Prozess-Kommunikation am Beispiel von MS-Excel

Mehr

Tamino eine XML- basierte Datenbank

Tamino eine XML- basierte Datenbank Tamino eine XML- basierte Datenbank Odilo Oehmichen oehmiche@fmi.uni-konstanz.de Universität Konstanz Sommersemester 2001 1 Kurzfassung Tamino ist eine XML-native Datenbank, die von der Software AG entwickelt

Mehr

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Web-Content-Management-Systeme () dienen dazu, komplexe Websites zu verwalten und den Autoren einzelner Webseiten möglichst

Mehr

Interaktive Webseiten mit PHP und MySQL

Interaktive Webseiten mit PHP und MySQL Interaktive Webseiten mit PHP und Vorlesung 4: PHP & Sommersemester 2003 Martin Ellermann Heiko Holtkamp Sommersemester 2001 Hier noch ein wenig zu (My)SQL: SHOW INSERT SELECT ORDER BY GROUP BY LIKE /

Mehr