Sie sind auf Seite 1von 5

Martin Szalay

1BKIF 29.12.2011

DBI Datenbanken:
Allgemein:
Flache Datei: Beinhaltet nur reine Daten, keine zustzlichen Infos zur Struktur Diese Infos werden von einer Anwendungssoftware definiert. Doch eine nderung der Hardware oder des Betriebssystems knnte Fehler bei einem Programm verursachen dass mit flachen Dateien arbeitet. Vannevar Bush hatte eine Idee: Datenbank. Datenbank: Datenbankverwaltungssystem od Datenbankmanagmentsystems (DBMS) greift nicht direkt auf die Daten zu, sondern mittels eines dritten Elements das zw. Programm und Datei eingeschoben wird. Eine DB beinhaltet Datenbeschreibungen und es knnen Regeln gespeichert werden. Diese Infos bezeichnet man als Metadaten. Die Komponenten der Datenbank bestehen aus Schema, Tabellen, Domnen und Einschrnkungen. Schema = Struktur der Datenbank Datenmodelle: Daten aus der realen Welt mit event. Zusammenhngen und Abhngigkeiten beschreiben. Diese sind unabhngig von jedem Programm und Programmiersprache. Ein Datenmodell beschreibt alle Daten eines Informationssystems. Der Benutzer hat eine eigene Sicht auf die Daten (View) und wird als logische Datei bezeichnet. Das Anwendungsprogramm verwendet diese logische Datei. Transaktion: Ist eine Folge von Lese- und Schreiboperationen. Eigenschaften: Fhrt einen korrekten DB-Zustand wieder in einen korrekten DB-Zustand (Konsistenz). Operationen bilden eine unteilbare atomare Einheit. Operationen mssen entweder ALLE durchgefhrt werden in der richtigen Reihenfolge oder KEINE einzige wird durchgefhrt. Whrend der Transaktion ist der Benutzer isoliert. Bewirkt eine Transaktion eine nderung (Commit) so wird diese dauerhaft gespeichert. ACID: Atomicity Consistency Isolation Durability Wurde nur ein Teil einer Transaktion durchgefhrt so ist die DB inkonsistent, dh sie beinhaltet falsche Daten -> inkorrekter Zustand.

Martin Szalay

1BKIF 29.12.2011

Die Operationen mssen rckgngig gemacht werden, ist nur mglich wenn Aufzeichnungen gemacht wurden (Logging).

Relationale Datenbank: Entitt = identifizierbarer Gegenstand aus der realen Welt; Instanz aus der objektorientierten Programmierung Attribut = Eigenschaft, Entitt wird beschrieben Faktum = Zuordnung des Wertes eines Attributs Schlssel = Kombination von Attributen einer Entitt Zusammengesetzter Schlssel = Schlssel bestehend aus 2 oder mehr Attributen Eindeutiger Schlssel = Identifiziert genau 1 Entitt Nichteindeutiger Schlssel = identifiziert eine Menge von Entitten die eine Eigenschaft von Eigenschaften gemeinsam haben Beziehung = Eine Verbindung zw Entitten Tabelle : zweidimensionales Array Regeln : jede Zeile beschreibt eine Entitt, es gibt keine doppelten Zeilen, Spalten = Attribut, jede Spalte eindeutiger Name, Alle Eintrge einer Spalte sind von selber Art, Reihenfolge spielt keine Rolle Zeile = ROW, Datensatz/Tupel Spalte = COLUMN, Datenfeld/Attribut Relationenschema = Menge aller Spalten einer Entitt Selektion = Auswahl einer Zeile (Entitt) aus einer oder mehreren Tabellen Projektion = Auswahl einer Spalte (Attribut) aus einer oder mehreren Tabellen Sicht (View) = Untermenge einer oder mehreren Tabellen (virtuelle Tabelle/logische Datei) Domne = Wertebereich des Attributs Einschrnkungen (Constraints) = Regeln welchen Wert ein Attribut annehmen darf

Martin Szalay

1BKIF 29.12.2011

SQL:
Ist eine nominierte, mengenorientiert arbeitende, nichtprozedurale Abfragesprache der 4ten Generation fr den Entwurf und Verwaltung von Datenbanken sowie fr die Bearbeitung. SQL wurde 1986 Standard, alle Datenbankhersteller passten sich an. Es gibt Unterschiede zw Zeit und Darum. Besteht aus 4 Teile: DDL (Data Definition Language) : Create, Drop, Alter DML (Data Manipulation Language) : Insert, Update, Merge, Delete DQL (Data Query Language) : Select DCL (Data Control Language) : Grant, Revoke, Begin, Commit, Rollback SQL-Datentypen: Int: ganze Zahl Smallint: kleine ganze Zahl Bigint: groe ganze Zahl Nummeric: rationale Zahl DEC: wie Nummeric jedoch Mindestnachkommastelle Real: einfache Genauigkeit Double: doppelte Genauigkeit Float: signifikante Ziffern Boolean: true/false Char: Zeichen Varchar: max. Zeichen Clob: sehr lange Zeichenketten Date: JJJJ-MM-TT Time: HH:MM:SS Timestamp: Tagesdatum mit Zeitangabe Interval day: Zeitunterschied zw 2 Zeitangaben Interval Year: Zeitunterschied zw 2 Datumsangaben Blob: binre Daten (Bilder, Audio-Daten) Row: Datensatz Array[n]: Array mit n Elementen Multiset: ungeordnete Sammlung mit gleichartigen Datenelementen Ref: Referenz auf ein Datenelement Jeder Datentyp darf NULL enthalten. Null bedeutet unbekannt.

Martin Szalay

1BKIF 29.12.2011

SELECT:
Liefert eine Menge von Zeilen. SELECT (welche Datenfelder) FROM (welche Tabelle) WHERE (Bedingungen) SELECT: DISTINCT unterdrckt Mehrfachausgabe (zB doppelte Namen werden gefiltert) AS Aliasname (dh man kann eine Tabelle anders fr die gesamte Abfrage benennen; bei MySQL mit Anfhrungszeichen; MS Access mit [] ) WHERE: Vergleichsoperatoren: = <> != < > <= >= dreiwertige Logik: TRUE, FALSE, NULL BETWEEN / IN (Intervallgrenzen und Listenwerte) LIKE (Platzhalter Wildcards) MS-Access nicht case-sensitive! Bei NULL der Operator IS/IS NOT! Wildcards: Standard( 1 Zeichen: _ ; beliebig: % ); Access ( 1 Zeichen: ? ; beliebig: *) ORDER BY: ASC (ascending; aufsteigend) <- Standard DESC (descending; absteigend) Aggregatfunktion (Mengenfunktionen): Ermittelt aus den Wert den einer Spalte einen einzelnen Wert. Sinnlos neben einer Aggregatfunktion auch noch einzelne Attribute anzugeben. Null-Werte bei Count nicht bercksichtigt. 5 Aggregatfunktionen: COUNT (zhlt Anzahl der Zeilen, mit * auch Zeilen mit Null-Werten) MIN (abhngig vom Datentyp den kleinsten Wert der Spalte) MAX (siehe oben, grter Wert der Spalte) SUM (Summe aller Werte einer Spalte) AVG (Durchschnitt der Werte einer Spalte)

Martin Szalay

1BKIF 29.12.2011

Datum und Zeit: Operatoren + u frs Rechnen MS-Access != SQL-Standard SQL (Begrenzungszeichen: Anfhrungszeichen; Trennzeichen: - od . ; Formate: JJJJ-MM-TT) Access ( # ; - od / ; JJJJ-MM-TT od MM-TT-JJJJ od TT-MM-JJJJ) GROUP BY: Gruppenbegriff ist Teil eines Datensatzes, eindeutiger Klassifizierung des Datensatzes. Gruppe ist eine Zusammenfassung aller Datenstze mit dem gleichen gruppenbegriff. Gruppenwechsel findet statt wenn der erste Datensatz einer Gruppe gelesen wird, kennzeichnet das Ende einer Gruppe und bewirkt: Verarbeitung der soeben beendeten Gruppe und Vorbereitung fr die nchste Gruppe. Die ermittelten Ausgabedatenstze der Gruppen knnen mittels einer HAVING-Klausel nochmals eingeschrnkt werden. WHERE = einzelne Datenstze HAVING = Gruppe von Datenstze JOIN: Verbindung zw 2 oder mehreren Tabellen wird VERBUND genannt. Tabelle kann mit sich selbst verbunden werden (Self-Join). Join, Verbindung mehr als eine Tabelle in der FROM-Klausel. Ein sinnvoller Join von n Tabellen bentigt n-1 WHERE-Bedingungen, die mit AND verknpft werden. Inner Join (Equi-Join): Es werden innerhalb beider Tabellen vorhandenen Zeilen mit gleichen Schlsselwerten bercksichtigt.