SQL. Was ist SQL? SQL- Standards Grundregeln Die DDL Datenbanken erstellen Tabellen erstellen und ändern Spalten definieren Schlüssel definieren - 2 -

Größe: px
Ab Seite anzeigen:

Download "SQL. Was ist SQL? SQL- Standards Grundregeln Die DDL Datenbanken erstellen Tabellen erstellen und ändern Spalten definieren Schlüssel definieren - 2 -"

Transkript

1 SQL - 1 -

2 SQL Was ist SQL? SQL- Standards Grundregeln Die DDL Datenbanken erstellen Tabellen erstellen und ändern Spalten definieren Schlüssel definieren - 2 -

3 Was ist SQL? 1974 unter dem Namen Sequel (Structured English Query Language) von IBM für experimentelles RDBMS entwickelt. Heute standardisierte Sprache für relationale DBMS (SQL2, 1992) und objekt- relationale DBMS (SQL3, 1999). SQL ist eine nichtprozedurale Sprache! - 3 -

4 Was kann SQL? SQL ist die De- facto- Standardsprache, mit der sich Daten aus relationalen Datenbanken abrufen und dort manipulieren lassen. Mit SQL kann der Programmierer oder Datenbankadministrator folgende Aufgaben ausführen: die Struktur einer Datenbank modifizieren. die Einstellungen der Systemsicherheit ändern. Benutzerberechtigungen für Datenbanken oder Tabellen einrichten. eine Datenbank nach Informationen abfragen. den Inhalt einer Datenbank aktualisieren

5 SQL- Standards Es gibt im wesentlichen drei (ISO) Standards für RDBMS: SQL- 89 (ANSI SQL), SQL- 92 (SQL- 2), SQL- 99 (SQL3) SQL- 89: Erster "echter" Standard (nach ISO/ ANSI SQL- 86) im wesentlichen "kleinster gemeinsamer Nenner der zu der Zeit verfügbaren DBMS- Produkte daher als Standard ziemlich wertlos enthielt bereits SQL DDL (Data Definition Language), Embedded SQL (für FORTRAN, COBOL, PL/ I und Pascal), Referentielle Integrität - 5 -

6 SQL- Standards: SQL 2 SQL- 92 (SQL 2): schon fünfmal so lang wie SQL- 89, neu hinzu kamen: SQL agents (Anfrageerzeugende Programme oder Benutzer) SQL Client/ Server Architekturen (SET CONNECTION) Feingranulare Transaktionskontrolle (SET TRANSACTION), einstellbare Isolation- level (für automatisches Locking) Standardisiertes Data Dictionary Embedded SQL für neue Sprachen (C, Ada,...) Unterstützung von Dynamic SQL Neue Datentypen (BLOBs, VARCHAR, DATE, TIME, TIMESTAMP) - 6 -

7 SQL 2 (II) Temporäre Tabellen (z. B. für "Zwischenergebnisse) Standardisierte Join- Operatoren: outer join, union join, cross join, inner join Standardisierte Fehlerbehandlung (GET DIAGNOSTICS) Constraints (Regeln für zulässige Wertebereiche) Sonstiges: String- Funktionen, div. Cursors, Änderungen an der referentiellen Integrität, an Autorisation, Typumwandlungen,... =>Es hat gut 5 Jahre gebraucht, bis alle Hersteller diesen Standard erfüllen konnten - 7 -

8 SQL 3 SQL3 brauchte mehrere Jahre bis zur Verabschiedung, umfaßt einige tausend Seiten Wesentliche Punkte Object SQL Stored Procedures Triggers Benutzerdefinierbare Datentypen CLI (Callable Level Interface) Multimedia- Erweiterungen => Hersteller werden Jahre bis zur Erfüllung des Standards brauchen, bis dahin Gefahr des Auseinanderdriftens" - 8 -

9 SQL- Standards: Fazit Den SQL- 92 Standard erfüllen inzwischen alle (abgesehen von einigen freien Systemen) Für praktischen Einsatz reicht dies aber nicht aus: Trend: DBMS- Hersteller werden "aufmüpfig" und versuchen, nach dem Microsoft- Prinzip alles durch vertikale Integration in den Datenbankkern zu verlagern (Java Virtual Machine, Dateisystemverwaltung, Web Server,...) Gegentrend: Datenbanken werden mehr und mehr hinter produktübergreifenden Standards "versteckt (ODBC/ JDBC, EJB Container, abstrakte DB- Schichten) - 9 -

10 Einteilung von SQL- Anweisungen SQL- Anweisungen können in die drei folgenden großen Kategorien eingeteilt werden: Data Manipulation Language (DML, Datenmanipulationssprache), mit der Daten abgerufen oder geändert werden Data Definition Language (DDL, Datendefinitionssprache), mit der die Datenstruktur definiert wird Data Control Language (DCL, Datenkontrollsprache), mit der die den Datenbankbenutzern erteilten Berechtigungen definiert werden

11 SQL: Grundregeln Jede SQL- Anweisung endet mit einem Semikolon. Eine SQL- Anweisung kann in eine Zeile eingegeben oder der Deutlichkeit halber auf mehrere Zeilen aufgeteilt werden. SQL ignoriert Groß- und Kleinschreibung; Sie können Groß- und Kleinbuchstaben mischen, wenn Sie auf SQL-Schlüsselwörter (wie z.b. select und insert), Tabellen- und Spaltennamen verweisen. Bei dem Inhalt einer Spalte spielt die Groß- und Kleinschreibung jedoch eine Rolle! Wenn Sie alle Kunden abfragen, deren Nachname mit a beginnt, und alle Namen in Großbuchstaben gespeichert sind, werden überhaupt keine Zeilen abgerufen. Wenn SQL- Schlüsselwörter als Tabellen- oder Spaltennamen verwendet werden sollen, müssen sie in doppelte Anführungszeichen eingeschlossen werden

12 SQL: Die DDL Anweisungen zur Definition oder Änderung der Datenbankstruktur Datenbanken CREATE DATABASE DROP DATABASE Relationen CREATE TABLE ALTER TABLE DROP TABLE Sichten CREATE VIEW DROP VIEW Indices CREATE INDEX DROP INDEX

13 CREATE/ DROP DATABASE Erzeugung einer Datenbank: CREATE DATABASE Datenbankname ; Löschen der Datenbank: DROP DATABASE Datenbankname ; Hier gibt es deutliche Unterschiede zwischen den verschiedenen DBMS! Findet oft nicht über SQL statt

14 CREATE TABLE Erzeugen einer neuen Tabelle (Relation) in der Datenbank. Vereinfachte Syntax: CREATE TABLE table_ name ( column_ name1 datatype [[ NOT] NULL],... column_ namen datatype [[ NOT] NULL]) [tablespace tablespacename ]; Die Definition der Variablen lautet wie folgt: table_ name steht für den Namen der Tabelle. column_ name1 bis column_ namen sind gültige Spaltennamen (s. u.). datatype ist die gültige Angabe des Oracle- Datentyps

15 Benennung von Tabellen Jede Tabelle, die einem Oracle- Account gehört, muß einen eindeutigen Namen haben. Ein Tabellenname darf nicht länger als 30 Zeichen sein; er muß mit einem Buchstaben beginnen. Ein Tabellenname kann die Buchstaben A bis Z, die Zahlen 0 bis 9 sowie die Zeichen $, # und _ (Unterstrich) enthalten. Ein Tabellenname darf kein von SQL reserviertes Wort enthalten. Ein Tabellenname kann Groß- und Kleinbuchstaben enthalten (wird von Oracle ignoriert, sofern die Tabellen-namen nicht in doppelten Anführungszeichen stehen). Der Name einer Tabelle sollte aussagekräftig sein keine übertriebenen Abkürzungen!

16 Benennung von Spalten Innerhalb einer Tabelle muß der Spaltenname eindeutig sein. (Man kann aber denselben Spaltennamen in unterschiedlichen Tabellen verwenden) Der Name einer Spalte kann aus bis zu 30 Zeichen bestehen; er muß mit einem Buchstaben beginnen. Der Spaltenname kann die Buchstaben A bis Z, die Ziffern 0 bis 9 sowie die Zeichen $, # und _ (Unterstrich) enthalten. Leerzeichen sind nicht erlaubt. Bei dem Spaltennamen darf es sich nicht um ein von SQL reserviertes Wort handeln. Wählen Sie aussagekräftige Namen sie lassen die Definition der einzelnen Spalten für den Benutzer deutlicher erscheinen. Eine Oracle- Tabelle kann aus bis zu 254 Spalten bestehen

17 Datentypen (ORACLE) CHAR( n): Zeichenkette fester Länge (1<= n<= 256) VARCHAR2( n): Zeichenkette variabler Länge (1<= n<= 4000) CHAR VARYING( n) (alternativ...) CHARACTER VARYING( n) (dito...) NUMBER( l, d): Dezimalzahlen ROWID: eindeutige ID für Zeile DATE: Datum/ Uhrzeit TIME: Uhrzeit mit Format (hhmmss) LONG: speichert Daten vom Typ VARCHAR. Es ist höchstens eine Spalte vom Typ LONG je Tabelle erlaubt. (nur bei ORACLE verfügbar) max. Größe: 2 GB BLOB, CLOB: große Binärobjekte (max. 4 GB)

18 Datentypen (ORACLE) Angegebener Datentyp Präzision Nachkommastellen NUMBER 38 0 NUMBER(*) 38 0 NUMBER(*,s) 38 s NUMBER(p) p 0 NUMBER(p,s) p s INTEGER 38 0 SMALLINT 38 0 FLOAT 38 0 FLOAT(*) 38 0 FLOAT(b) b 0 REAL 63b,18d 0 DOUBLE PRECISION

19 CREATE TABLE: Ein Beispiel

20 Die Kunden- Tabelle create table KUNDE ( KUNDENNR NUMBER (6) not null, NAME VARCHAR2 (100) null, PLZ NUMBER (5) not null, ORT VARCHAR2 (100) null, STRASSE VARCHAR2 (100) null, constraint PK_ KUNDE primary key ( KUNDENNR ) );

21 Definition von Schlüsseln Erzeugen eines Primärschlüssels in einer neuen Tabelle: CREATE TABLE table_ name ( column_ name1 datatype [[ NOT] NULL],... column_ namen datatype [[ NOT] NULL], CONSTRAINT c_ name PRIMARY KEY ( column_ namex ) ) [tablespace tablespacename ];

22 Definition von Schlüsseln (2) Erzeugen eines Fremdschlüssels in einer neuen Tabelle: CREATE TABLE table_ name ( column_ name1 datatype [[ NOT] NULL],... column_ namen datatype [[ NOT] NULL], CONSTRAINT c_ name FOREIGN KEY ( column_ namex ) REFERENCES Fremdtabelle ( FREMDcolumn_ namex ) ) [tablespace tablespacename ];

23 Die Artikel- Tabelle create table ARTIKEL ( ARTNR NUMBER( 6 ) not null, NAME VARCHAR2( 100 ) null, PREIS NUMBER( 10, 3 ) null, constraint PK_ ARTIKEL primary key ( ARTNR ) )

24 Die Auftrags- Tabelle create table AUFTRAG ( KUNDENNR NUMBER( 6) not null, ARTNR NUMBER( 6) not null, constraint PK_ AUFTRAG primary key (KUNDENNR, ARTNR) );

25 Indices Ein Tabellenindex ist ein Oracle- Objekt, das die in einer oder mehreren Tabellenspalten vorkommenden Werte enthält. Es gibt eindeutige und nicht eindeutige Indices

26 Indices: Do s and Dont s O. k.: Erstellen Sie einen Index für solche Spalten, deren Werte weit verteilt sind, wie z. B. Postleitzahlen. Erstellen Sie einen Spaltenindex so, daß die indizierten Spalten maximal 20 Prozent der Tabellendaten enthalten. Nicht o. k.: Erstellen Sie keinen eindeutigen Index statt der Deklaration eines Primärschlüssels. Übertreiben Sie es mit der Indexerstellung nicht. Sie können zwar die Datenabfrage verbessern, aber die Gesamtleistung der Datenbank negativ beeinflussen. Erstellen Sie keinen Index für eine Spalte, deren Werte wenig verteilt sind, wie z. B. Geschlecht. Indizieren Sie keine kleinen Tabellen

27 Einen Index erstellen Syntax: CREATE [ UNIQUE ] INDEX Indexname ON table- name ( column1 [order],... columnn [order] ); Order kann ASCending (Default) oder DESCending sein UNIQUE: es sind keine Duplikate möglich Beispiel: create index ERTEILT_ FK on AUFTRAG (KUNDENNR asc); create index ENTHALT_ FK on AUFTRAG (ARTNR asc);

28 ALTER TABLE ALTER TABLE erlaubt es dem DB- Admin oder dem Entwickler, die Struktur einer Tabelle im nachhinein zu verändern. Sie können damit z. B.: eine neue Spalte in eine vorhandene Tabelle einfügen eine vorhandene Spalte vergrößern oder verkleinern die Eigenschaft einer bestehenden Spalte von erforderlich in optional oder umgekehrt ändern einen Standardwert für eine vorhandene Spalte bestimmen andere Integritätsregeln für eine bestehende Spalte festlegen

29 ALTER TABLE Die Syntax ALTER TABLE Tabellenname < ADD (< Spaltendefinition Constraint >,... ); MODIFY(< Spaltendefinition Constraint >,... ); DROP PRIMARY KEY [ CASCADE ]; DROP CONSTRAINT Constraint ; >

30 ALTER TABLE: Ein Beispiel alter table KUNDE ADD ( TELEFON NUMBER (20) not null, FAX NUMBER (20) null ); alter table KUNDE MODIFY NAME VARCHAR2 (200) not null; Achtung: bei manchen DBs: ein neu eingefügtes Attribut darf nicht NOT NULL sein! => Bei der Einfügung wird als Default für das neue Attribut NULL angenommen, da ja zum Zeitpunkt der Definition kein Datenwert bekannt ist

31 Bsp.: Fremdschlüssel einfügen alter table AUFTRAG add constraint FK_ AUFTRAG_ ERTEILT_ KUNDE foreign key ( KUNDENNR ) references KUNDE ( KUNDENNR ); alter table AUFTRAG add constraint FK_ AUFTRAG_ ENTHALT_ ARTIKEL foreign key ( ARTNR ) references ARTIKEL ( ARTNR );

32 Löschen von Schlüsseln Den Primärschlüssel löschen: ALTER TABLE Tabellenname DROP PRIMARY KEY [ CASCADE ]; Achtung! Bei Verwendung von CASCADE werden alle referenzierenden Fremdschlüssel mitgelöscht! Einen Fremdschlüssel löschen: ALTER TABLE Tabellenname DROP CONSTRAINT FS- Name ;

33 DROP TABLE Löscht eine komplette Tabelle unwiderruflich! Syntax: DROP TABLE Tabellenname ; Empfohlen ist, immer den Eigentümer mitzuspezifizieren: DROP TABLE Eigentuemer. Tabellenname ;

34 SQL: Die DML Anweisungen zum Abruf oder zur Änderung der Daten Abruf SELECT Änderung INSERT UPDATE DELETE

35 Einfügen von Daten Mit der Anweisung INSERT lassen sich Daten in eine Datenbank eingeben. Die Anweisung existiert in zwei Varianten: INSERT... VALUES Datensatzweises Einfügen (für einzelne Werte) und INSERT... SELECT Kopieren von Informationen aus anderen Tabellen in eine neue Tabelle (später!)

36 INSERT... VALUES Die Anweisung INSERT... VALUES trägt Daten in eine Tabelle datensatzweise ein. Diese Anweisung bietet sich für kleinere Operationen an, die nur wenige Datensätze betreffen. Die Syntax lautet: INSERT INTO Tabellenname [ ( Spalte1 [, Spalte2 [... ] ] ) ] VALUES ( Wert1 [, Wert2 [... ] ] ); In der INSERT- Anweisung sind Spaltennamen nicht erforderlich. Gibt man sie nicht an, trägt SQL die Werte nacheinander entsprechend der Spaltennummer ein den ersten Wert in die erste Spalte, den zweiten in die zweite Spalte usw

37 INSERT... VALUES: Ein Beispiel Wir fügen einen neuen Kunden in unsere Datenbank ein: INSERT INTO KUNDE ( NAME, PLZ, ORT, STRASSE, TELEFON ) VALUES ( Franz Maier, 88090, Immenstaad, 07545/ );

38 INSERT... VALUES: Regeln INSERT... VALUES fügt einen Datensatz in eine Tabelle ein und verwendet dabei die angegebenen Spalten mit den entsprechenden Werten. Hierbei sind drei Regeln zu beachten: Die Werte müssen vom gleichen Typ wie die Felder in der Zieltabelle sein. Die Größe der Daten muß innerhalb der Größe der Spalten liegen. (Man kann z. B. keinen String mit 80 Zeichen in eine 40 Zeichen breite Spalte einfügen.) Strings müssen in Anführungszeichen eingeschlossen sein. Die Position der Daten in der VALUES- Liste muß der Position in der Spaltenliste der hinzuzufügenden Spalte entsprechen

39 Abfragen von Daten Um Daten aus der Datenbank auszulesen, verwendet man die SELECT- Anweisung. In der einfachsten Form lautet ihre Syntax: SELECT * FROM Tabellenname ; gibt alle Felder (Attribute) aller Datensätze einer Tabelle zurück SELECT Spalte1 [, Spalte2 [,...] ] FROM Tabellenname ; gibt nur die ausgewählten Felder (Attribute) aller Datensätze einer Tabelle zurück

40 Beispieldaten

41 Beispiele SELECT * FROM KUNDEN ; SELECT Name, Strasse, PLZ, Ort FROM Kunden ;

42 SELECT wie geht es weiter? Im Prinzip ist das das ganze Geheimnis hinter Datenbankabfragen. Der Teufel steckt aber wie so oft im Detail... Was brauchen wir noch? Auswahl spezieller Datensätze Verknüpfung von Daten mehrerer Tabellen Elimination überflüssiger Ergebnisse Sortieren und/ oder Gruppieren der Ergebnisse... => SELECT ist eine sehr mächtige Anweisung es gibt noch viel zu tun

43 SELECT DISTINCT Um doppelte Ergebnisse zu eliminieren, verwendet man das Schlüsselwort DISTINCT. Syntax: SELECT [< ALL DISTINCT >] Spalte1 [, Spalte2 [,...] ] FROM Tabellenname ; Anm.: Das Schlüsselwort ALL kennzeichnet explizit, daß man doppelte Einträge sehen möchte da dies aber die Default- Einstellung ist, ist dieses Schlüsselwort überflüssig

44 SELECT DISTINCT: Beispiel Beispiel: Ausgabe aller Orte, in denen Kunden wohnen: SELECT DISTINCT PLZ, Ort FROM Kunde ;

45 Ausdrücke Ein Ausdruck gibt einen Wert zurück. Ausdrücke sind jede Spaltenangabe (gibt den Inhalt dieser Spalte als Wert zurück) Konstanten (Zahlen, Strings) Zwei Ausdrücke, die mit einem Operator verknüpft sind, stellen wieder einen Ausdruck dar ( komplexer Ausdruck )

46 Operatoren in SQL

47 Beispiel: Ausdrücke in SELECT Beispiel: Ausgabe einer modifizierten Kundennummer und eines Vergleichskriteriums für die Postleitzahl: SELECT Kundennr+1000, Name, PLZ< FROM Kunden ;

48 Berechnete Spalten An Stelle einer jeden Spaltenbezeichnung kann in der SELECT- Anweisung ein beliebiger Ausdruck stehen. Das Ergebnis dieses Ausdrucks wird als eine neue, berechnete Spalte behandelt und kann mit einem Namen versehen werden. Syntax: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] >[,...] FROM Tabellenname ; Das Schlüsselwort AS ist abhängig von der SQL- Implementation

49 Beispiel: Berechnete Spalten SELECT Name, Preis / AS Nettopreis FROM Artikel ;

50 Arithmetische Operatoren in SQL

51 Beispiel: Arithm. Operationen SELECT ArtNr, Name, Preis ROUND( Preis) AS gerundet, EK, ROUND( EK) AS Ekgerundet FROM KUNDEN;

52 Stringoperatoren in SQL

53 Beispiel: Stringoperationen SELECT INSTR( UPPER( Name)," H") AS HPos, Name " in Ort AS Kundenbez FROM KUNDEN;

54 Aggregatfunktionen in SQL Aggregatfunktionen operieren jeweils auf einer Spalte und liefern für die ganze Spalte ein Ergebnis zurück!

55 Beispiel: Aggregatfunktionen SELECT COUNT(*) AS Anzahl FROM KUNDEN; SELECT SUM( Anzahl) AS Gesamtzahl, AVG( Anzahl) AS Durchschnitt, MAX( Anzahl) AS Maximum FROM Auftrag;

56 Datensätze selektieren Bisher konnten wir nur alle Zeilen einer Tabelle auf einmal abrufen. Was ist, wenn uns nur bestimmte Datensätze interessieren? => Erweiterung des SELECT- Kommandos: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] > [,...] FROM Tabellenname WHERE Bedingung ; Bedingung ist ein Ausdruck, der wahr sein muß, damit der entsprechende Datensatz zurückgegeben wird

57 Die WHERE- Klausel: Beispiele Alle Kunden aus Lindau: SELECT * FROM Kunden WHERE Ort=" Lindau"; Alle Artikel über 1000 SELECT * FROM Artikel WHERE Preis> 1000;

58 DatensätzeLOgische Operatoren in SQL

59 Die WHERE- Klausel: Beispiele Durch Verknüpfung von Ausdrücken lassen sich auch komplexe Abfragen realisieren, z. B. Alle Kunden mit PLZ> 80000, bei denen die Straße mit S anfängt: SELECT * FROM Kunden WHERE PLZ> AND INSTR( Strasse, S )= 1 ;

60 Ähnlichkeitsvergleiche für Strings Mit Hilfe des LIKE- Operators lassen sich Muster in Strings finden: SELECT * FROM Kunden WHERE Strasse LIKE "See%" ; Hierbei gelten folgende Platzhalter: "%" für beliebig viele Zeichen "_" für genau ein Zeichen

61 STARTING WITH... Mit der Option STARTING WITH lassen sich Stringfelder mit einem bestimmten Anfang selektieren SELECT * FROM Kunden WHERE Strasse STARTING WITH "See" ; Die STARTING WITH- Klausel ist ein spezialisiertes LIKE: WHERE Feld STARTING WITH "xx" und WHERE Feld LIKE "xx%" sind identisch!

62 Der Operator BETWEEN BETWEEN erleichtert den Test, ob ein Wert innerhalb eines Bereiches liegt: SELECT * FROM Kunden WHERE PLZ BETWEEN AND ; Die Alternative wäre: SELECT * FROM Kunden WHERE PLZ>= AND PLZ<= ;

63 Auswahl einer Wertemenge Mit dem IN- Operator lassen sich die Elemente einer Menge auswählen z. B. die Kunden mit den Nummern 2, 3 oder 5: SELECT * FROM Kunden WHERE Kundennr IN (2,3,5) ;

64 Gruppierung Mittels "GROUP BY" lassen sich Aggregatfunktionen nach verschiedenen Spaltenwerten getrennt berechnen. Syntax: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] > [,...] FROM Tabellenname WHERE Bedingung GROUP BY Spalte1 [,...] ; Achtung: Alle aufgeführten Einzelspalten müssen auch in der GROUP BY- Anweisung stehen!

65 Gruppierung: Beispiel SELECT ArtNr, SUM( Anzahl) AS VerkEinheiten FROM Auftrag GROUP BY ArtNr ;

66 Auswahl vor Gruppierung SELECT ArtNr, SUM( Anzahl) AS VerkEinheiten FROM Auftrag WHERE Anzahl< 10 GROUP BY ArtNr ;

67 Gruppierung und Auswahl... Mit der vorigen Anweisung wählen wir zuerst alle Verkäufe mit weniger als 10 Artikeln aus und gruppieren und summieren dann. Was aber tun, wenn wir alle Artikel wissen wollen, die insgesamt seltener als zehnmal verkauft wurden? SELECT ArtNr, SUM (Anzahl) AS VerkEinheiten FROM Auftrag WHERE SUM (Anzahl)< 10 GROUP BY ArtNr ;? Das geht nicht! WHERE arbeitet nicht mit Aggregatfunktionen zusammen!!!

68 HAVING Für die Selektion nach Aggregatfunktionen gibt es die Having- Klausel. Syntax: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] > [,...] FROM Tabellenname GROUP BY Spalte1 [,...] HAVING Bedingung ;

69 HAVING: Beispiel Welche Artikel wurden insgesamt seltener als zehnmal verkauft? SELECT ArtNr, SUM( Anzahl) AS VerkEinheiten FROM Auftrag GROUP BY ArtNr HAVING SUM( Anzahl)< 10;

70 HAVING: Vorsicht! HAVING arbeitet in manchen SQL-Implementierungen auch ohne Aggregatfunktionen, führt dann aber i. d. R. zu unerwarteten Ergebnissen! SELECT ArtNr, SUM( Anzahl) AS VerkEinheiten FROM Auftrag GROUP BY ArtNr HAVING Anzahl< 10; Jetzt werden alle Gruppen zurückgegeben, in denen die angegebene Bedingung für alle Zeilen erfüllt ist!

71 Sortieren der Ausgabe Die Ausgabe einer SELECT- Abfrage läßt sich mittels der ORDER BY- Klausel sortieren Syntax: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] > [,...] FROM Tabellenname WHERE Bedingung ORDER BY Spalte1 [< ASC DESC >] [,...]; Hierbei sortiert ASC (default!) aufsteigend und DESC absteigend

72 - 72 -

73 - 73 -

74 Tabellen verknüpfen SQL bietet zwei Möglichkeiten zur Verknüpfung von Tabellen: Unterabfragen: Hier wird in einer WHERE-Bedingung der Hauptabfrage auf Ergebnisse einer zweiten Abfrage Bezug genommen Die Join- Operation liefert Zeilen aus zwei oder mehr Tabellen, die eine gemeinsame Menge von Merkmalen teilen

75 Unterabfragen Die Syntax für die Verwendung einer Unterabfrage lautet: SELECT [< ALL DISTINCT >] < Spalte1 Ausdruck1 [ [ AS ] Alias1 ] > [,...] FROM Tabellenname1 WHERE SpalteN Operator ( SELECT SpalteX FROM Tabellenname2 WHERE Bedingung ) ;

76 Unterabfragen: Ein erstes Beispiel Wer hat wann wieviele Drucker gekauft? Bedingung: Ich möchte in der Abfrage nicht die Artikelnummer verwenden! SELECT KundenNr, Anzahl, Datum FROM Auftrag WHERE ArtNr = (SELECT ArtNr FROM Artikel WHERE Name=" Drucker" );

77 Korrelierte Unterabfragen Man kann in einer Unterabfrage auch Bezug auf ein Feld der übergeordneten Abfrage nehmen. Eine solche Unterabfrage nennt man "korrelierte Unterabfrage". Bezeichner in Unterabfragen: Lokale Bezeichner sind außerhalb der Unterabfrage nicht sichtbar. Ein lokaler Bezeichner überdeckt immer den globalen Bezeichner gleichen Namens. Globale Tabellen, auf die in der Unterabfrage Bezug genommen wird, müssen daher ggf. mit einem Aliasnamen versehen werden

78 Korrelierte Unterabfragen ein Beispiel Bei welchen Bestellungen wurden jeweils die meisten Stück eines jeden Artikels verkauft? SELECT * FROM Auftrag A WHERE Anzahl=( SELECT MAX ( Anzahl) FROM Auftrag WHERE A. Artnr= Artnr) ORDER BY Artnr;

79 Der EXISTS- Operator EXISTS übernimmt eine Unterabfrage als Argument. Der Rückgabewert ist TRUE, wenn die Unterabfrage beliebige Werte liefert, FALSE, wenn die Ergebnismenge leer ist

80 EXISTS ein Beispiel Welche Kunden sind die einzigen Kunden an ihrem Ort? SELECT * FROM Kunden K WHERE NOT EXISTS (SELECT Kundennr FROM Kunden WHERE Kundennr<> K. Kundennr AND Ort= K. Ort);

81 Die Operatoren ANY und SOME ANY und SOME sind synonym. Sie vergleichen einen Wert mit allen von einer Unterabfrage zurückgegebenen Werten. ANY ist TRUE, wenn die Bedingung für mindestens einen Wert erfüllt ist FALSE, wenn die Bedingung für keinen Wert erfüllt ist ANY und SOME arbeiten also analog wie der IN- Operator allerdings funktioniert dieser nur mit dem Gleichheitszeichen

82 ANY ein Beispiel Welche Artikel sind teurer als mindestens ein Artikel aus dem Bestand? SELECT * FROM Artikel WHERE Preis > ANY (SELECT Preis FROM Artikel);

83 Der ALL- Operator ALL vergleicht einen Wert mit allen von einer Unterabfrage zurückgegebenen Werten. ALL ist TRUE, wenn die Bedingung für alle Werte erfüllt ist FALSE, wenn die Bedingung für mindestens einen Wert nicht erfüllt ist

84 Unterabfragen - Zusammenfassung Eine Unterabfrage ist eine SELECT- Anweisung innerhalb einer anderen DML- Anweisung. Folgendes ist zu beachten: Die Unterabfrage muß in Klammern gesetzt werden. Die Anzahl der von der Unterabfrage zurückgegebenen Zeilen muß der Anzahl der von der Funktion/ dem Operator erwarteten Werte entsprechen. Die Anzahl der von der Unterabfrage zurückgegebenen Spalten muß mit der Anzahl der von der Funktion/ dem Operator erwarteten Spalten übereinstimmen. Die ORDER BY- Klausel wird nicht innerhalb einer Unterabfrage eingesetzt

85 Neue Tabelle aus Unterabfrage Eine Unterabfrage läßt sich auch einsetzen, um eine neue Tabelle als (Teil-) Kopie einer bestehenden Tabelle zu erstellen. Die Syntax in Oracle lautet: CREATE TABLE table_ name [ ( Spalte1, Spalte2,... ) ] AS Select_ Statement ;

86 CREATE... SELECT: Beispiel Alle Kunden im PLZ- Bereich 8: CREATE TABLE Kunden8 AS SELECT * FROM Kunden WHERE PLZ BETWEEN AND ; Nr, Name und Straße aller Kunden aus Immenstaad: CREATE TABLE KundenImm (Nr, Name, Strasse) AS SELECT (Kundennr, Name, Strasse) FROM Kunden WHERE Ort = "Immenstaad" ;

87 CREATE... SELECT CREATE... SELECT gehört zu den weniger standardisierten Befehlen. Bsp. Microsoft SQL: SELECT... INTO SELECT Kundennr AS Nr, Name, Strasse INTO KundenImm FROM Kunden WHERE Ort=" Immenstaad";

88 INSERT... SELECT CREATE... SELECT erstellt eine neue Tabelle als Kopie einer bestehenden. Mit INSERT... SELECT können Sie Datensätze aus einer Tabelle an eine andere (bestehende) Tabelle anfügen: INSERT INTO Zieltabelle [ ( Spalte1, Spalte2,... ) ] SELECT Spalte1, Spalte2,... FROM Quelltabelle WHERE Suchbedingung ;

89 INSERT... SELECT: Beispiel Sichern Sie alle Kundendaten in die Tabelle "KundenSicherung": INSERT INTO KundenSicherung SELECT * FROM Kunden ;

90 INSERT... SELECT: Regeln Bei der Anweisung INSERT... SELECT sind einige neue Regeln zu beachten: Die Anzahl der Spalten in der Anweisung INSERT INTO muß gleich der Anzahl der Spalten sein, die die SELECT- Anweisung zurückgibt. Die Datentypen der Spalten in der Anweisung INSERT INTO müssen den Datentypen der aus der SELECT-Anweisung zurückerhaltenen Spalten entsprechen. Wenn die Spaltennamen in der SELECT- Anweisung nicht mit den Spaltennamen der Zieltabelle übereinstimmen, müssen deren korrespondierende Spaltennamen explizit angegeben werden. Die SELECT- Anweisung darf (eigentlich) keine Zeilen aus der Zieltabelle auswählen

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

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

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

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

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

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

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

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

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

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

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern

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

Übersicht der wichtigsten MySQL-Befehle

Übersicht der wichtigsten MySQL-Befehle Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit

Mehr

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY.

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY. SELECT - Der Grundbefehl zur Auswahl von Daten Die SELECT-Anweisung fragt Daten aus einer Datenbank ab und stellt diese in einer virtuellen Tabelle zur Verfügung. Diese virtuelle Tabelle, eine Menge von

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

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

Datumsangaben, enthält mindestens Jahr, Monat, Tag

Datumsangaben, enthält mindestens Jahr, Monat, Tag Datenbanken mit SQL Informatik - Sprenger Häufig wird mit Tabellenkalkulationen gearbeitet, obwohl der Einsatz von Datenbanken sinnvoller ist. Tabellenkalkulationen wie Microsoft Excel oder LibreOffice

Mehr

Relationales Datenbanksystem Oracle

Relationales Datenbanksystem Oracle Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information

Mehr

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten. Einführung SQL 2010 Niko Becker Mit unseren Übungen zu ACCESS können Sie Aufbau und Struktur einer relationalen Datenbank kennenlernen. Wir zeigen Ihnen wie Sie Tabellen, Formulare und Berichte erstellen

Mehr

5.3 Datenänderung/-zugriff mit SQL (DML)

5.3 Datenänderung/-zugriff mit SQL (DML) 5.3 Datenänderung/-zugriff mit SQL (DML) Hinweis: - DML-Anweisungen sind mengenorientiert - Mit einer Anweisungen kann mehr als ein Tupel eingefügt, geändert, gelöscht oder gelesen werden Benutzungs- und

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Oracle: Abstrakte Datentypen:

Oracle: Abstrakte Datentypen: Oracle: Abstrakte Datentypen: Oracle bietet zwei mögliche Arten um abstrakte Datentypen zu implementieren: Varying Array Nested Table Varying Array (kunde) kdnr kdname gekaufteart 1 Mustermann 1 4 5 8

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Informationen aus der Datenbank lesen Klasse SQLiteDatabase enthält die Methode query(..) 1. Parameter: Tabellenname

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7 1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern

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

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger

Mehr

SQL - Übungen Bearbeitung der Datenbank Personal (1)

SQL - Übungen Bearbeitung der Datenbank Personal (1) Bearbeitung der Datenbank Personal (1) 1. Abfragen einer einzigen Tabelle 1.1. Zeigen Sie alle Informationen an, die über die Kinder der Mitarbeiter gespeichert sind. 1.2. Zeigen Sie aus der Tabelle stelle

Mehr

MySQL: Einfaches Rechnen. www.informatikzentrale.de

MySQL: Einfaches Rechnen. www.informatikzentrale.de MySQL: Einfaches Rechnen Vorweg: Der Merksatz Warum geht Herbert oft laufen? Vorweg: Der Merksatz Warum geht Herbert oft laufen?...... WHERE... GROUP BY... HAVING... ORDER BY... LIMIT Beispieldatenbank

Mehr

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Beispiel 1: Filmdatenbank

Beispiel 1: Filmdatenbank Beispiel 1: Filmdatenbank Die Filmdatenbank hat drei Tabellen (ACTOR, MOVIE, PLAYED) Aufgabe 1: Erstelle mit Hilfe der SQL-DDL die drei Tabellen und die Datenbank (MOVIEDB) ACTOR (ActorID, Name, Birthday,

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

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

SQL. Fortgeschrittene Konzepte Auszug

SQL. Fortgeschrittene Konzepte Auszug SQL Fortgeschrittene Konzepte Auszug Levels SQL92 Unterteilung in 3 Levels Entry Level (i.w. SQL89) wird von nahezu allen DBS Herstellern unterstützt Intermediate Level Full Level SQL DML 2-2 SQL92 behebt

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

Berechnungen in Access Teil I

Berechnungen in Access Teil I in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer

Mehr

Abfragen: Grundbausteine

Abfragen: Grundbausteine Abfragen: Grundbausteine Abfragen sollen gezielt Teile der Information wiedergeben. Das Ergebnis einer solchen Operation ist eine. Der Aufbau der Ergebnistabelle wird durch zwei Grundverfahren festgelegt:

Mehr

Ein Ausflug zu ACCESS

Ein Ausflug zu ACCESS Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet

Mehr

Vorlesung Dokumentation und Datenbanken Klausur

Vorlesung Dokumentation und Datenbanken Klausur Dr. Stefan Brass 5. Februar 2002 Institut für Informatik Universität Giessen Vorlesung Dokumentation und Datenbanken Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

Mehr

Inhaltsverzeichnis. Einleitung

Inhaltsverzeichnis. Einleitung vn Inhaltsverzeichnis Einleitung Kapitel 1: Eine Einführung in relationale Datenbanken 7 Was ist eine relationale Datenbank? 9 Verknüpfen der einzelnen Tabellen 10 Die Reihenfolge der Zeilen ist beliebig

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 22. April 2013 - MySQL Sebastian Cuy sebastian.cuy@uni-koeln.de Datenbanken Was sind eigentlich Datenbanken? Eine

Mehr

Relationale Datenbanken in der Praxis

Relationale Datenbanken in der Praxis Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5

Mehr

Abfragen (Queries, Subqueries)

Abfragen (Queries, Subqueries) Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl

Mehr

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL Betreuer: Sascha Kriewel, Tobias Tuttas Raum: LF 230 Bearbeitung: 26., 27. und 29. Juni 2006 Datum Team (Account) Vorbereitung Präsenz Aktuelle Informationen, Ansprechpartner und Material unter: http://www.is.inf.uni-due.de/courses/dbp_ss07/index.html

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Objekte einer Datenbank Microsoft Access Begriffe Wegen seines Bekanntheitsgrades und der großen Verbreitung auch in Schulen wird im Folgenden eingehend auf das Programm Access von Microsoft Bezug genommen.

Mehr

Summenbildung in Bauteiltabellen mit If Then Abfrage

Summenbildung in Bauteiltabellen mit If Then Abfrage Summenbildung in Bauteiltabellen mit If Then Abfrage Die in Bauteiltabellen ausgelesenen Werte lassen sich in jeder Spalte als Summe berechnen. So können selbstverständlich die Flächen der in der Tabelle

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Datenbanken im WI-Unterricht mit

Datenbanken im WI-Unterricht mit Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

105.3 SQL-Datenverwaltung

105.3 SQL-Datenverwaltung LPI-Zertifizierung 105.3 SQL-Datenverwaltung Copyright ( ) 2009 by Dr. W. Kicherer. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view a

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Referenzielle Integrität SQL

Referenzielle Integrität SQL Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)

Mehr

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro

Mehr

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp 5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries

Mehr

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle. Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu

Mehr

Dossier: Rechnungen und Lieferscheine in Word

Dossier: Rechnungen und Lieferscheine in Word www.sekretaerinnen-service.de Dossier: Rechnungen und Lieferscheine in Word Es muss nicht immer Excel sein Wenn Sie eine Vorlage für eine Rechnung oder einen Lieferschein erstellen möchten, brauchen Sie

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

ACCESS SQL ACCESS SQL

ACCESS SQL ACCESS SQL ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache

Mehr

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen

Access [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen Abfragen lassen sich längst nicht nur dazu benutzen, die gewünschten Felder oder Datensätze einer oder mehrerer Tabellen darzustellen. Sie können Daten auch nach bestimmten Kriterien zu Gruppen zusammenfassen

Mehr

Arbeiten mit einem lokalen PostgreSQL-Server

Arbeiten mit einem lokalen PostgreSQL-Server Arbeiten mit einem lokalen PostgreSQL-Server Download für das Betriebssystem Windows PostgreSQL-Server und pgadmin: http://www.enterprisedb.com/products-servicestraining/pgdownload#windows pgadmin: http://www.pgadmin.org/download/windows.php

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

Datenbanken Microsoft Access 2010

Datenbanken Microsoft Access 2010 Datenbanken Microsoft Access 2010 Abfragen Mithilfe von Abfragen kann ich bestimmte Informationen aus einer/mehrerer Tabellen auswählen und nur diese anzeigen lassen die Daten einer/mehrerer Tabellen sortieren

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

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel 4.14.3 Bedingungen über Werte 4.14.4 Statische Integrität Zu jeder Tabelle werden typischerweise ein Primärschlüssel und möglicherweise weitere Schlüssel festgelegt (UNIQUE-Klausel). In jeder Instanz zu

Mehr

MIN oder MAX Bildung per B*Tree Index Hint

MIN oder MAX Bildung per B*Tree Index Hint E-Mail: rainer@lambertz-c.de Internet: http://www.lambertz-c.de MIN oder MAX Bildung per B*Tree Index Hint Zugegeben, der Trick Min- oder Maximalwerte per Index Hint zu ermitteln ist nicht neu. Gewöhnlich

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

SQL und MySQL. Kristian Köhntopp

SQL und MySQL. Kristian Köhntopp SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)

Mehr

Erstellen eines Formulars

Erstellen eines Formulars Seite 1 von 5 Word > Erstellen bestimmter Dokumente > Formen Erstellen von Formularen, die in Word ausgefüllt werden können Basierend auf einer Vorlage können Sie dieser Inhaltssteuerelemente und Hinweistext

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten Berichte bieten die gleichen Möglichkeit zur Berechnung von Werten wie Formulare und noch einige mehr. Im Gegensatz zu Formularen bieten Berichte die Möglichkeit, eine laufende Summe zu bilden oder Berechnungen

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

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Die SQL-Syntax für den Befehl CREATE TABLE sieht folgendermassen aus:

Die SQL-Syntax für den Befehl CREATE TABLE sieht folgendermassen aus: Einführung in MySQL SQL (Structured Query Language) ist eine Computersprache zum Speichern, Bearbeiten und Abfragen von Daten in relationalen Datenbanken. Eine relationale Datenbank kann man sich als eine

Mehr

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Datenbanken für Online Untersuchungen

Datenbanken für Online Untersuchungen Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

IBM Informix SQL. Seminarunterlage. Version 11.04 vom

IBM Informix SQL. Seminarunterlage. Version 11.04 vom Seminarunterlage Version: 11.04 Version 11.04 vom 27. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

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

Es geht also im die SQL Data Manipulation Language.

Es geht also im die SQL Data Manipulation Language. 1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.

Mehr