Prakt. Datenbankprogrammierung. Sommersemester I,9: Datenmanipulation. Daten-Manipulations-Sprache. Das INSERT-Statement
|
|
- Cathrin Schmidt
- vor 7 Jahren
- Abrufe
Transkript
1 Prakt. Datenbankprogrammierung Sommersemester 2005 I,9: Datenmanipulation Daten-Manipulations-Sprache DML-Statements werden ausgeführt bei: Hinzufügen von Datensätzen Modifizieren von Datensätzen Löschen von Datensätzen Eine Transaktion ist eine logisch zusammenhängende Menge von DML- Statements. Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg I-181 Praktische Datenbankprogrammierung SS05 Christian Goldberg Hinzufügen von Datensätzen Das INSERT-Statement 50 DEVELOPMENT DETROIT Neuer Datensatz DEPT DEPTNO DNAME LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON hinzufügen in die DEPT-Tabelle Tabelle DEPT DEPTNO DNAME LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 50 DEVELOPMENT DETROIT Neue Datensätze werden mit dem INSERT- Statement zu einer Tabelle hinzugefügt. INSERT INTO VALUES table [(column [, column...])] (value [, value...]); Mit dieser Syntax kann nur ein Datensatz pro Statement hinzugefügt werden. I-182 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-183 Praktische Datenbankprogrammierung SS05 Christian Goldberg
2 Hinzufügen neuer Datensätze Einfügen eines Datensatzes mit Angabe der Werte für jede Spalte. Werte müssen in der Standard- Reihenfolge der Tabelle stehen. Optional können in der INSERT-Klausel die Spaltennamen angegeben werden. SQL> INSERT INTO dept (deptno, dname, loc) 2 VALUES (50, 'DEVELOPMENT', 'DETROIT'); Zeichenketten und Datumswerte stehen in einfachen Anführungszeichen. INSERT und NULL-Werte Implizit: Auslassen der entsprechenden Spalte in der INSERT-Klausel. SQL> INSERT INTO dept (deptno, dname ) 2 VALUES (60, 'MIS'); Explizit: Angabe des Schlüsselwortes NULL. SQL> INSERT INTO dept 2 VALUES (70, 'FINANCE', NULL); I-184 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-185 Praktische Datenbankprogrammierung SS05 Christian Goldberg Einfügen spezieller Werte Die SYSDATE-Funktion gibt das aktuelle Datum und die Zeit zurück. SQL> INSERT INTO emp (empno, ename, job, 2 mgr, hiredate, sal, comm, 3 deptno) 4 VALUES (7196, 'GREEN', 'SALESMAN', , SYSDATE, 2000, NULL, 6 10); Einfügen spezieller Datumswerte Hinzufügen eines neuen Angestellten. SQL> INSERT INTO emp 2 VALUES (2296,'AROMANO','SALESMAN',7782, 3 TO_DATE('FEB 3,97', 'MON DD, YY'), , NULL, 10); Überprüfen der Einfügung. EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO AROMANO SALESMAN FEB I-186 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-187 Praktische Datenbankprogrammierung SS05 Christian Goldberg
3 Einfügen von Werten mit Substitutionsvariablen Erstellen eines interaktiven Skriptes mit SQL*Plus Substitutionsvariablen. SQL> INSERT INTO dept (deptno, dname, loc) 2 VALUES (&department_id, 3 '&department_name', '&location'); Enter value for department_id: 80 Enter value for department_name: EDUCATION Enter value for location: ATLANTA Erstellen eines Skriptes mit angepassten Prompts ACCEPT speichert den Wert in einer Variable. PROMPT zeigt den angepassten Text an. ACCEPT department_id PROMPT 'Please enter the - department number:' ACCEPT department_name PROMPT 'Please enter - the department name:' ACCEPT location PROMPT 'Please enter the - location:' INSERT INTO dept (deptno, dname, loc) VALUES (&department_id, '&department_name', '&location'); I-188 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-189 Praktische Datenbankprogrammierung SS05 Christian Goldberg Kopieren von Datensätzen von einer anderen Tabelle Verbinden des INSERT-Statements mit einer Unteranfrage. SQL> INSERT INTO managers(id, name, salary, hiredate) 2 SELECT empno, ename, sal, hiredate 3 FROM emp 4 WHERE job = 'MANAGER'; 3 rows created. Die VALUES-Klausel nicht verwenden! Anzahl der Spalten in der INSERT-Klausel und Unteranfrage müssen übereinstimmen. Ändern von Daten in einer Tabelle EMP EMPNO ENAME JOB EMP... DEPTNO 7839 KING PRESIDENT BLAKE MANAGER CLARK MANAGER JONES MANAGER EMPNO ENAME JOB ändere Zeile in EMP table... DEPTNO 7839 KING PRESIDENT BLAKE MANAGER CLARK MANAGER JONES MANAGER I-190 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-191 Praktische Datenbankprogrammierung SS05 Christian Goldberg
4 Das UPDATE-Statement Ändern existierender Zeilen mit dem UPDATE-Statement. UPDATE SET [WHERE table column = value [, column = value] condition]; Wenn nötig, kann mehr als eine Zeile geändert werden. Ändern von Zeilen in einer Tabelle Bestimmte Zeilen werden geändert durch Anwendung der WHERE-Klausel. SQL> UPDATE emp 2 SET deptno = 20 3 WHERE empno = 7782; 1 row updated. Alle Zeilen der Tabelle werden geändert bei Weglassen der WHERE-Klausel. SQL> UPDATE employee 2 SET deptno = 20; 14 rows updated. I-192 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-193 Praktische Datenbankprogrammierung SS05 Christian Goldberg Ändern mit Mehr-Spalten- Unteranfragen Setze Job und Abteilung vom Angestellten 7698 auf dieselben Werte wie von SQL> UPDATE emp 2 SET (job, deptno) = 3 (SELECT job, deptno 4 FROM emp 5 WHERE empno = 7499) 6 WHERE empno = 7698; 1 row updated. Ändern von Zeilen basierend auf einer anderen Tabelle Verwendung von Unteranfragen in UPDATE- Statements,, um Zeilen basierend auf den Werten einer anderen Tabelle zu ändern. SQL> UPDATE employee 2 SET deptno = (SELECT deptno 3 FROM emp 4 WHERE empno = 7788) 5 WHERE job = (SELECT job 6 FROM emp 7 WHERE empno = 7788); 2 rows updated. I-194 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-195 Praktische Datenbankprogrammierung SS05 Christian Goldberg
5 Ändern von Zeilen: Integrity Constraint Error SQL> UPDATE emp 2 SET deptno = 55 3 WHERE deptno = 10; UPDATE emp * ERROR at line 1: ORA-02291: integrity constraint (USR.EMP_DEPTNO_FK) violated - parent key not found Abteilung Nummer 55 existiert nicht Löschen von Zeilen aus einer Tabelle DEPT DEPTNO DNAME LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 50 DEVELOPMENT DETROIT 60 MIS... lösche Zeile aus DEPT-Tabelle Tabelle DEPT DEPTNO DNAME LOC ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON 60 MIS... I-196 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-197 Praktische Datenbankprogrammierung SS05 Christian Goldberg Das DELETE-Statement Existierende Zeilen können mit dem DELETE-Statement gelöscht werden. DELETE [FROM] table [WHERE condition]; Löschen von Zeilen aus einer Tabelle Spezielle Zeilen werden gelöscht bei Anwendung der WHERE-Klausel. SQL> DELETE FROM department 2 WHERE dname = 'DEVELOPMENT'; 1 row deleted. Alle Zeilen einer Tabelle werden gelöscht bei Weglassen der WHERE-Klausel. SQL> DELETE FROM 4 rows deleted. department; I-198 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-199 Praktische Datenbankprogrammierung SS05 Christian Goldberg
6 Löschen von Zeilen basierend auf einer anderen Tabelle Verwendung von Unteranfragen im DELETE- Statement,, um Zeilen basierend auf Werten einer anderen Tabelle zu löschen. SQL> DELETE FROM employee 2 WHERE deptno = 3 (SELECT deptno 4 FROM dept 5 WHERE dname ='SALES'); 6 rows deleted. I-200 Praktische Datenbankprogrammierung SS05 Christian Goldberg Löschen von Zeilen: Integrity Constraint Error SQL> DELETE FROM dept 2 WHERE deptno = 10; DELETE FROM dept * ERROR at line 1: ORA-02292: integrity constraint (USR.EMP_DEPTNO_FK) violated - child record found Zeilen, deren Primärschlüssel in anderen Tabellen als Fremdschlüssel verwendet wird, können nicht gelöscht werden. I-201 Praktische Datenbankprogrammierung SS05 Christian Goldberg Datenbank-Transaktionen Datenbank-Transaktionen Bestehen aus einer der folgenden Aktionen: Ein oder mehrere DML-Statements die eine konsistente Änderung an den Daten vornehmen Ein DDL-Statement Ein DCL-Statement Beginnen mit dem ersten ausführbaren SQL-Statement Enden bei folgenden Aktionen: COMMIT oder ROLLBACK DDL- oder DCL-Statement wird ausgeführt (automatisches Commit) Ausloggen des Nutzers System-Crash I-202 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-203 Praktische Datenbankprogrammierung SS05 Christian Goldberg
7 Vorteile von COMMIT und ROLLBACK Steuerung von Transaktionen Transaktion Sicherstellen der Daten-Konsistenz Vorschau auf die Datenänderungen, bevor sie permanent gespeichert werden Logische Gruppierung zusammenhängender Operationen COMMIT INSERT Savepoint A UPDATE INSERT Savepoint B DELETE ROLLBACK to Savepoint B ROLLBACK to Savepoint A ROLLBACK I-204 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-205 Praktische Datenbankprogrammierung SS05 Christian Goldberg Implizite Transaktionsverwaltung Ein automatisches COMMIT erfolgt bei folgenden Aktionen: Ein DDL-Statement wird ausgeführt Ein DCL-Statement wird ausgeführt Normales Beenden von SQL*Plus, ohne explizites COMMIT oder ROLLBACK Ein automatisches ROLLBACK erfolgt bei nicht-normalem Beenden von SQL*Plus oder einem Systemausfall Datenzustand vor COMMIT oder ROLLBACK Der vorige Zustand der Daten kann wiederhergestellt werden. Der aktuelle Nutzer kann die Ergebnisse von DML-Operationen mit SELECT überprüfen. Andere Nutzer können die Ergebnisse von DML-Operationen des aktuellen Nutzers nicht einsehen. Die betreffenden Zeilen werden gesperrt; andere Nutzer können diese Daten nicht ändern. I-206 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-207 Praktische Datenbankprogrammierung SS05 Christian Goldberg
8 Datenzustand nach COMMIT Datenänderungen sind permanent in der Datenbank gespeichert Der vorherige Datenzustand ist nicht wiederherstellbar Alle Nutzer können die Ergebnisse sehen. Sperren auf den Zeilen werden aufgehoben; die Zeilen können von anderen Nutzern wieder geändert werden. Alle Savepoints werden gelöscht. Permanentes Speichern von Daten Änderungen vornehmen. SQL> UPDATE emp 2 SET deptno = 10 3 WHERE empno = 7782; 1 row updated. Änderungen mit COMMIT speichern. SQL> COMMIT; Commit complete. I-208 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-209 Praktische Datenbankprogrammierung SS05 Christian Goldberg Datenzustand nach ROLLBACK Alle anstehenden Änderungen können mit ROLLBACK verworfen werden. Datenänderungen werden verworfen. Vorheriger Zustand wird wiederhergestellt. Sperren auf den Zeilen werden freigegeben. Rollback zu einem Sicherungspunkt Erstellen eines Sicherungspunktes während der aktuellen Transaktion mit dem SAVEPOINT-Statement. Rollback zu diesem Sicherungspunkt mit dem ROLLBACK TO SAVEPOINT-Statement. SQL> DELETE FROM 14 rows deleted. SQL> ROLLBACK; Rollback complete. employee; SQL> UPDATE... SQL> SAVEPOINT update_done; Savepoint created. SQL> INSERT... SQL> ROLLBACK TO update_done; Rollback complete. I-210 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-211 Praktische Datenbankprogrammierung SS05 Christian Goldberg
9 Statement-basiertes Rollback Bei Fehlschlagen eines einzelnen DML- Statements während der Ausführung, wird nur dieses zurückgesetzt (Rollback). Der Oracle-Server implementiert einen impliziten Sicherungspunkt. All anderen Änderungen bleiben erhalten. Der Nutzer sollte Transaktionen explizit mit COMMIT oder ROLLBACK beenden. Lese-Konsistenz Lese-Konsistenz (read consistency) garantiert eine konsistente Sicht auf die Daten zu jeder Zeit. Änderungen eines Nutzers stehen nicht mit denen eines anderen in Konflikt. Stellt sicher, dass auf denselben Daten: lesende nicht auf schreibende und schreibende nicht auf lesende Prozesse warten müssen. I-212 Praktische Datenbankprogrammierung SS05 Christian Goldberg I-213 Praktische Datenbankprogrammierung SS05 Christian Goldberg User A User B Implementierung der Lese- Konsistenz UPDATE emp SET sal = 2000 WHERE ename = 'SCOTT'; SELECT * FROM emp; Rollback- segmente lese- konsistente Daten I-214 Praktische Datenbankprogrammierung SS05 Christian Goldberg Daten- blöcke geänderte und nicht geänderte Daten alte Daten vor der Änderung Sperren Oracle-Sperren: Verhindern zerstörende Interaktionen zwischen konkurrierenden Transaktionen Funktionieren ohne Aktion des Nutzers Nutzen automatisch die niedrigste Sperrgranularität (geringste Einschränkung). Werden während der gesamten Dauer der Transaktion aufrecht erhalten Haben zwei grundlegende Modi: Exclusive Share I-215 Praktische Datenbankprogrammierung SS05 Christian Goldberg
SQL. Datenmanipulation. Datenmanipulationssprache. Ein neues Tupel hinzufügen. Das INSERT Statement
SQL Datenmanipulation Datenmanipulationssprache Ein DML Statement wird ausgeführt wenn: neue Tupel eingefügt werden existierende Tupel geändert werden existierende Tupel aus der Tabelle gelöscht werden
MehrDie Datenmanipulationssprache SQL
Die Datenmanipulationssprache SQL Daten eingeben Daten ändern Datenbank-Inhalte aus Dateien laden Seite 1 Data Manipulation Language A DML statement is executed when you Add new rows to a table Modify
MehrPrakt. Datenbankprogrammierung. Sommersemester Was sind Constraints? I,11: Verwendung von Constraints. Festlegung von Constraints
Prakt. Datenbankprogrammierung Sommersemester 2005 I,11: Verwendung von Constraints Was sind Constraints? Constraints stellen Regeln auf Tabellenebene sicher. Constraints verhindern das Löschen aus einer
MehrPrakt. Datenbankprogrammierung. Sommersemester 2005
Prakt. Datenbankprogrammierung Sommersemester 2005 A,2: Hierarchische Anfragen Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg Wann ist eine hierarchische Anfrage
MehrErzeugen von Constraints
Erzeugen von Constraints Was sind Constraints? Durch Constraints werden Regeln auf einem bestimmtem Tabellen-Level erzwungen. Die folgenden Constraint-Typen sind in Oracle integriert: NOT NULL UNIQUE Key
MehrVariable. Interaktive Skripte
Interaktive Skripte Variable...sal =? deptno=?.. ename =?... Werte eingeben während der Laufzeit. Nutzer SQL1 basierend auf OAI-Kurs Copyright Oracle Corporation, 1998. All rights reserved SQL2 basierend
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
MehrEntspricht dem kartesischen Produkt von zwei oder mehr selektierten Tabellen ohne Join-Bedingung.
Tipps & Tricks: Neuerungen Joins Bereich: SQL Erstellung: 07/2004 HA Versionsinfo: 10.1, 10.2, 11.1, 11.2 Letzte Überarbeitung: 06/2009 MA Neuerungen zu Joins Ab Version 9i sind alle dem SQL:1999-Standard
MehrSQL-Einführung Teil 2
SQL-Einführung Teil 2 Prof. Dr. Waldemar Rohde Dipl.-Ing. Jörg Höppner 19.10.2006 1 Datenmanipulationssprache (DML) Select DML ermöglicht es Daten mit SELECT abzurufen UPDATE zu verändern Delete DML Update
MehrMengen- oder SET-Operatoren fassen das Ergebnis von zwei oder mehreren Teilabfragen zu einem Ergebnis zusammen.
Tipps & Tricks: Mengenoperatoren Bereich: DBA, SQL Erstellung: 06/2004 MP Versionsinfo: 10.1, 10.2, 11.1, 11.2 Letzte Überarbeitung: 06/2009 MA Mengenoperatoren Mengen- oder SET-Operatoren fassen das Ergebnis
MehrDie relationale Abfragesprache SQL Structured Query Language
Die relationale Abfragesprache SQL Structured Query Language Übersicht Einfache Abfragen SQL*Plus Auswahlbedingungen (where-klausel) Ein-Zeilen-Funktionen, Gruppenfunktionen Gruppierung von Daten Unter-Abfragen
MehrViews erzeugen. Datenbank - Objekte. Wozu braucht man Views? Was ist eine View?
Datenbank - Objekte Views erzeugen Objekt Tabelle View Sequence Index Synonym Objekt Beschreibung Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen von
MehrPrakt. Datenbankprogrammierung. Sommersemester I,5: Aggregieren von Daten mit Gruppen-Funktionen
Prakt. Datenbankprogrammierung Sommersemester 2005 I,5: Aggregieren von Daten mit Gruppen-Funktionen Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg Was sind Gruppen-Funktionen?
MehrPrakt. Datenbankprogrammierung. Sommersemester 2005
Prakt. Datenbankprogrammierung Sommersemester 2005 I,3: Single-Row-Funktionen Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg SQL-Funktionen Input arg 1 arg 2 Funktion
MehrSkripte schreiben. Überblick SQL*Plus. Einloggen in SQL*Plus. Tabellenstrukturen anzeigen
Skripte schreiben Überblick Login in. Beschreiben der Tabellenstrukturen. Editieren der SQL-Anweisung Ausführen von SQL aus. SQL-Anweisungen in Dateien speichern bzw. SQL-Anweisungen anhängen. Ausführen
MehrDatenbanken Labor, MI : Übung 1 SQL - Abfragen Patrick Lipinski
Aufgabe 1 Erstellen Sie eine Abfrage, die aus der EMP/DEPT-Tabelle die Felder Empno, Ename, Deptno und dname aller Mitarbeiter mit einem Gehalt von > 2500 ausgibt. select EMPNO, ENAME from EMP where SAL
MehrPrakt. Datenbankprogrammierung. Sommersemester 2005
Prakt. Datenbankprogrammierung Sommersemester 2005 II,11: Erstellen von Datenbank- Triggern Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg Überblick über Trigger
MehrPrakt. Datenbankprogrammierung. Sommersemester Überblick über Trigger. II,11: Erstellen von Datenbank- Triggern. Datenbank-Trigger: Beispiel
Prakt. Datenbankprogrammierung Sommersemester 2005 II,11: Erstellen von Datenbank- Triggern Überblick über Trigger Ein Trigger ist ein PL/SQL-Block, der bei einem bestimmten festgelegten Ereignis (Event)
MehrPrakt. Datenbankprogrammierung. Sommersemester 2005
Prakt. Datenbankprogrammierung Sommersemester 2005 II,2: Schreiben von ausführbaren Statements Martin-Luther-Universität Halle, Institut für Informatik, Datenbanken Christian Goldberg PL/SQL-Block-Syntax
MehrAbfragen (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
MehrTrigger schreiben. Überblick über Trigger. Datenbank Trigger: Beispiel. Aufbau eines Triggers
Überblick über Trigger Trigger schreiben Ein Trigger ist ein PL/SQL Block, der implizit aufgerufen wird, wenn ein bestimmtes Ereignis eintritt. Ein Trigger kann ein Datenbanktrigger oder ein Anwendungstrigger
MehrGrundlagen der Informatik III ERM-Modell Thema: Grundlagen der Datenbanken
Hochschule Harz FB Automatisierung und Informatik Versuch: Grundlagen der Informatik III ERM-Modell Thema: Grundlagen der Datenbanken Versuchsziele Vertiefung in der ERM-Modellierung. Benutzen eines Designers.
MehrArbeit mit zusammengesetzten Datentypen
Arbeit mit zusammengesetzten Datentypen Zusammengesetzte Datentypen Typen: PL/SQL RECORDS PL/SQL TABELLEN Enthalten interne Komponenten Sind wiederverwendbar Copyright Oracle Corporation, 1998. All rights
MehrDie bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.
Betrifft Autor FIRST, LAST Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem NF9i-Kurs, NF9i-Techno-Circle der Trivadis und Oracle9i Data Warehousing
MehrÜbung PL/SQL Trigger Lösungen
Übung PL/SQL Trigger Lösungen 1) Gebe das aktuelle Datum aus. Wofür steht dual? Ändere das Datum für Deine aktuelle Session auf das Format Jahr (4 Stellen) Monat (2 Stellen) Tag (2 Stellen)[Leerzeichen]Stunde
MehrDatenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt Datenschutz: Zugriffsrechte in SQL 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrMulti-temporale Datenbank Features in Oracle 12c Philipp Salvisberg
Multi-temporale Datenbank Features in Oracle 12c Philipp Salvisberg Senior Principal Consultant November 2013 Oracle 12c hat ein neues Feature namens "Temporal Validity". Mit Temporal Validity können eine
MehrOracle 8i und 9i New Features. DOAG November Peter Jensch, Trivadis GmbH
Oracle 8i und 9i New Features DOAG November 200 Peter Jensch, Trivadis GmbH Facts & Figures Über 300 Mitarbeiter (D und CH) Über 200 Oracle Consultant Über 300 Kunden (ohne Schulung) Über 000 Projekte
MehrFunktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion
Überblick über Stored Functions Funktionen Eine Funktion ist ein benannter PL/SQL- Block, der einen Wert zurückgibt. Eine Funktion kann in der Datenbank als Objekt zur wiederholbaren Ausführung gespeichert
Mehr12. Datenschutz: Zugriffsrechte in SQL Datenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 Datenschutz: Zugriffsrechte in SQL 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrDATENBANKEN 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.
MehrTransaktionsverwaltung
Kapitel l2 Transaktionsverwaltung Skript 2009 Matthias Schubert Dieses Skript basiert auf dem Skript zur Vorlesung Datenbanksysteme II von Prof. Dr. Christian Böhm gehalten im Sommersemester 2007 an der
MehrPraktische SQL-Befehle
Praktische SQL-Befehle Datenbanksysteme I WiSe 2018/2019 Todor Ivanov DB1 WS2018 1 Praktische SQL-Befehle Nested Selects Inserts Updates Views Triggers Constraints Functions Voraussetzung: Laptop + MySQL/
MehrFakultät für Informatik & Wirtschaftsinformatik DB & IS II SS Transaktionen & ACID. Dr. Christian Senger Transaktionen & ACID 1
Transaktionen & ACID Dr. Christian Senger Transaktionen & ACID 1 PC Architekturen Kein Mehrbenuzterbetrieb Recovery? Benutzerabbrüche? PC Lokale Datenbank PC PC PC PC PC PC-System DBMS PC PC PC PC Internet
MehrDonnerstag, 10. November h00, Musensaal Database. LogMiner im Einsatz. Marco Patzwahl MuniQSoft GmbH, Unterhaching b.
Donnerstag, 10. November 2005 15h00, Musensaal LogMiner im Einsatz Marco Patzwahl MuniQSoft GmbH, Unterhaching b. München Schlüsselworte: LogMiner, Analyse der Redologdateien, Redolog Audit, fehlerhafte
MehrKapitel 2 Transaktionsverwaltung. Skript 2009 Matthias Schubert
Kapitel 2 Transaktionsverwaltung Skript 2009 Matthias Schubert Dieses Skript basiert auf dem Skript zur Vorlesung Datenbanksysteme II von Prof. Dr. Christian Böhm gehalten im Sommersemester 2007 an der
MehrCodegenerator für APEX Collections und Tabular Forms
Codegenerator für APEX Collections und Tabular Forms Andreas Wismann wismann@when-others.com WHEN OTHERS Beratung Programmierung Coaching Agenda Andreas Wismann wismann@when-others.com Tabular Forms Features
MehrArt der Info: Technische Background Info Teil 3 (April 2002)
Betrifft: Autor: Oracle9i New Features SQL und PL/SQL Patrick Malcherek (patrick.malcherek@trivadis.com) Art der Info: Technische Background Info Teil (April 00) Quelle: Aus dem NF9i-Kurs und NF9i-Techno-Circle
MehrZusammengesetzte Datentypen
Zusammengesetzte Datentypen.1 Records... -4.1.1 Implizite Typdeklaration mit %ROWTYPE... -6.1.2 Referenzierung eines Records... -6.2 PL/SQL Tables... -8.2.1 Deklaration einer PL/SQL Table... -8.3 Referenzierung
MehrGrundlagen von Datenbanken. Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking
Grundlagen von Datenbanken Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking SQL DDL: Referentielle Aktionen (1/3) Potentielle Gefährdung der referentiellen Integrität durch Änderungsoperationen
MehrFolien php/mysql Kurs der Informatikdienste
Folien php/mysql Kurs der Informatikdienste 1. Einführung in die Datenbank MySQL Kursbeispiel und Kursziele 1.1 Das Kursbeispiel: eine kleine Personalverwaltung 1.2 Was brauchen wir? 1.3 Ziele Kurs AEMS1,
Mehr7 DCL (Data Control Language)
7 DCL (Data Control Language) 7 In diesem Kapitel werden wir die der SQL-Befehle für Transaktionen und für die Vergabe von Privilegien kennen lernen. Eine der wichtigsten Eigenschaften einer Datenbank
MehrArt der Info: Technische Background Info Teil 2 (April 2002)
Betrifft: Autor: Oracle 9i New Features SQL und PL/SQL Christine Hansen (christine.hansen@trivadis.com) Art der Info: Technische Background Info Teil 2 (April 2002) Quelle: Aus dem NF9i-Kurs und NF9i-Techno-Circle
MehrEs 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Übungsaufgaben mit Lösungen
Abt. Wi.-Inf. II Wirtschaftsinformatik II: SQL 1 Übungsaufgaben mit Lösungen 1) Ausgabe sämtlicher Spalten der Tabelle DEPARTMENT. SELECT * FROM DEPARTMENT 2) Ausgabe aller Projektnummern und Projektnamen.
MehrIntegritätsbedingungen Eindeutige Identifikation (1)
8. Tabellendefinition in SQL 8-1 8. Tabellendefinition in SQL 8-2 Inhalt 1. Schlüssel Tabellendefinitionen 2. Fremdschlüssel 3. CREATE TABLE-Syntax 4. DROP TABLE 5. ALTER TABLE 8. Tabellendefinition in
MehrÜben von DDL und DML. Ergebnis:
SQL DDL Üben von DDL und DML https://www.jdoodle.com/execute-sql-online Ergebnis: Befehlsgruppen in SQL DDL Data Definition Language DML Data Manipulation Language CREATE: Tabellen anlegen DROP: Tabellen
MehrÜ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
Mehr3 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
MehrDatenbanken SQL. Insert, Update, Delete, Drop. Krebs
Datenbanken SQL Insert, Update, Delete, Drop Krebs Inhalt 1. Datensätze einfügen: INSERT 2. Datensätze verändern: UPDATE 3. Datensätze löschen: DROP vs. DELETE Beispiel Datenbank Schule Klasse P_Klasse
MehrFunktion definieren Gibt Summe der Gehälter zurück. Aufruf in einem SQL-Statement
Funktion definieren Gibt Summe der Gehälter zurück Aufruf in einem SQL-Statement Dr. Christian Senger Einführung PL/SQL 1 Procedures & Transaktionen CREATE OR REPLACE PROCEDURE write_log ( log_code IN
MehrDatenbanken: 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
MehrSQL Intensivpraktikum SS 2008
SQL Intensivpraktikum SS 2008 Aggregation von Daten Arbeit mit Gruppen SQL1 basierend auf OAI-Kurs Copyright Oracle Corporation, 1998. All rights reserved. Gruppenfunktionen Gruppenfunktionen verarbeiten
MehrOracle 8i Die umfassende Referenz
Oracle 8i Die umfassende Referenz Bearbeitet von Hans Hajer, Kevin Loney, George Koch 1. Auflage 2000. Buch. XXVIII, 1321 S. Hardcover ISBN 978 3 446 21570 2 Format (B x L): 17,7 x 23,2 cm Gewicht: 1852
Mehr6. Updates in SQL 6-1. Inhalt. 1. Update-Kommandos in SQL. 2. Transaktionen. 3. Gleichzeitige Zugriffe
6. Updates in SQL 6-1 Inhalt 1. Update-Kommandos in SQL 2. Transaktionen 3. Gleichzeitige Zugriffe 6. Updates in SQL 6-2 Updates in SQL: Übersicht SQL-Befehle zur Änderung des DB-Zustands: 1. INSERT: Einfügung
MehrExplizite Cursor. Cursor. Steuerung des expliziten Cursors. Explizite Cursor Funktionen
Explizite Jedes SQL Statement, das der Oracle Server ausführt, hat einen individuellen, der verbunden ist mit: Implizitem : Declariert für alle DML-Statements und PL/SQL SELECT Statements. Explizitem :
MehrEigenschaften von TAs: ACID-Prinzip
Transaktionsparadigma Definition: Transaktion ununterbrechbare Folge von DML-/DDL-Befehlen begin transaction --- end transaction begin: meist implizit mit ersten Datenbankzugriff end: commit (work) oder
Mehr5.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
MehrMySQL-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
MehrSeminar 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
MehrTriggern. Change Data Capture
Triggern. Change Data Capture Triggers Was sind Triggers? Eine bestimmte Art von gespeicherte Prozedur, die automatisch ausgeführt wird wenn eine DML oder DDL Anweisung ausgeführt wird Eine Menge von Aktionen,
MehrSÄTZE MIT VARIABLER LÄNGE
Sätze variabler Länge 1 SÄTZE MIT VARIABLER LÄNGE Generellere Struktur von Datensätzen: Ersetzen von Felder durch Gruppen von Feldern. Beispiel: n m E 1 E 2 e 1 e 2 e 11 e 12 e 21 e 22 e 23 e 24 variable
MehrMetadaten oder Metainformationen sind Daten, die Informationen über Merkmale anderer Daten enthalten, aber nicht diese Daten selbst (Wikipedia)
Metadaten oder Metainformationen sind Daten, die Informationen über Merkmale anderer Daten enthalten, aber nicht diese Daten selbst (Wikipedia) Dr. Christian Senger Metadaten 1 Vorgehen bei ER Modellierung
MehrKontrollstrukturen in PL/SQL
Kontrollstrukturen in PL/SQL.1 Bedingte Anweisungen... -2.1.1 Die IF-THEN-Anweisung... -2.1.2 Die IF-THEN-ELSE-Anweisung... -.1.3 Die IF-THEN-ELSIF-Anweisung... -.1. Die CASE-Anweisung... -6.2 Schleifen
MehrOracle 9i Einführung Performance Tuning
Kurs Oracle 9i Einführung Performance Tuning Teil 6 Locks & Latches Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 16 Seite 1 von 16 1. Einführung Locks & Latches 2. Locks (Sperren) 3. Modi & Levels
MehrInhaltsverzeichnis. Vorwort... 11
Vorwort.................................................. 11 1 Das Problem mit dem Problem.............................. 13 1.1 SQL Die Sprache des Orakels.............................. 14 1.2 Die ersten
MehrOnline Table Shrink. Freigabe von ungenutztem Speicherplatz. Autor: Ralf Durben, ORACLE Deutschland GmbH
Online Table Shrink Freigabe von ungenutztem Speicherplatz Autor: Ralf Durben, ORACLE Deutschland GmbH DOAGNews Q2_2004 Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere
MehrSchnellübersichten. SQL Grundlagen und Datenbankdesign
Schnellübersichten SQL Grundlagen und Datenbankdesign 5 Datenbanken 2 6 Tabellen erstellen und verwalten 3 7 Daten einfügen, aktualisieren, löschen 4 8 Einfache Datenabfragen 5 9 Schlüsselfelder und Indizes
MehrDie Anweisung create table
SQL-Datendefinition Die Anweisung create table create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Wirkung dieses Kommandos ist sowohl
MehrKapitel 7: Referentielle Integrität
Kapitel 7: Referentielle Integrität Im Allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen (IB) erfüllen. Integritätsbedingungen
Mehr8. Tabellendefinition in SQL 8-1. Tabellendefinitionen
8. Tabellendefinition in SQL 8-1 Tabellendefinitionen 8. Tabellendefinition in SQL 8-2 Inhalt 1. Schlüssel 2. Fremdschlüssel 3. CREATE TABLE-Syntax 4. DROP TABLE 5. ALTER TABLE 8. Tabellendefinition in
MehrIsolationsstufen für Transaktionen. Dr. Karsten Tolle
Isolationsstufen für Transaktionen Dr. Karsten Tolle Probleme bei Transaktionen Gewährleistung der Isolation Sperren kein Lost Update Read 1 (Accounts[13]) Read 2 (Accounts[13]) Write 2 (Accounts[13],101.000)
MehrSQL Intensivpraktikum SS 2008
SQL Intensivpraktikum SS 2008 SQL en Einfache en Eingabe arg 1 arg 2 führt Aktion durch Ergebnis Wert Ausgabe arg n SQL1 basierend auf OAI-Kurs Copyright Oracle Corporation, 1998. All rights reserved.
MehrTransaktionen. Concurrency Management in MS SQL Server
Transaktionen Concurrency Management in MS SQL Server Transaktionen in SQL Server SQL Server bietet die Möglichkeit, eine Reihe von Datenbankoperationen (Änderungen) in einem logischen Vorgang zu gruppieren
MehrDatenbanken Konsistenz und Mehrnutzerbetrieb III
Datenbanken Konsistenz und Mehrnutzerbetrieb III 1. Oracle Architektur! Komponenten des Oracle Servers! Zugriff über Netzwerk 2. Zugriffsrechte! Starten und Schließen der Datenbank! Nutzer und Rollen!
MehrTransaktionen in Praxis. Dr. Karsten Tolle Vorl
Transaktionen in Praxis Dr. Karsten Tolle Vorl. 13.06.2017 Probleme bei Transaktionen Lost Update und Inconsistent Retrieval Sichtweise vom Benutzer Auszug aus SQL 92 1) P1 ("Dirty read"): SQL-transaction
Mehr7. Transaktionsverwaltung
7. Transaktionsverwaltung Motivation Transaktionen erlauben Bündelung von Operationen und gelten als wichtigster Beitrag des Bereichs Datenbanken zur Informatik; sie werden heute auch außerhalb von Datenbanksystemen
MehrDatenbanken 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................................................
MehrInhaltsverzeichnis. Inhalt. 1 Einführung in die Datenbanktechnologie
3 Inhaltsverzeichnis 1 Einführung in die Datenbanktechnologie 1.1 Einleitung... 8 1.1.1 Zielsetzung... 8 1.1.2 Aufbau des Studienbuches... 9 1.1.3 Abgrenzung... 10 1.2 Grundbegriffe... 10 1.3 Datenbanksysteme...
MehrDatenbank und Tabelle mit SQL erstellen
Datenbank und Tabelle mit SQL erstellen 1) Übung stat Mit dem folgenden Befehlen legt man die Datenbank stat an und in dieser die Tabelle data1 : CREATE DATABASE stat; USE stat; CREATE TABLE data1 ( `id`
MehrPrakt. Datenbankprogrammierung. Sommersemester II,4: Kontrollstrukturen. Kontrolle der Ausführungsreihenfolge. IF-Statement
Prakt. Datenbankprogrammierung Sommersemester 2005 II,4: Kontrollstrukturen Kontrolle der Ausführungsreihenfolge in PL/SQL Die Reihenfolge von Statements kann mit bedingten IF-Statements und Schleifen
MehrOracle 10g Einführung
Kurs Oracle 10g Einführung Teil 5 Einführung Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 16 Seite 1 von 16 Agenda 1 Tabellen und Views erstellen 2 Indizes
MehrForeign Keys. MySQL 4, 5. Kapitel 16: Fremdschlüssel. Marcel Noe
MySQL 4, 5 Kapitel 16: Fremdschlüssel Gliederung 1 Gliederung 1 Fremdschlüssel sichern die Referenzielle Integrität voneinander abhängiger Tabellen. Um Fremdschlüssel definieren zu können, müssen Sie die
MehrErstellen und Verwalten von Tabellen
Erstellen und Verwalten von Tabellen Als nächstes müssen die Tabellen der Datenbank Personalwesen erzeugt werden. Die Syntax dazu lautet: CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(TABELLENDEFINITION,
Mehr4.14 Integrität und Trigger
4.14 Integrität und Trigger Im Allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen (IB) erfüllen. Integritätsbedingungen können
MehrDB-Datenbanksysteme. DB SQL-DML 1 Mario Neugebauer
DB-Datenbanksysteme DB-13 043-SQL-DML 1 Mario Neugebauer Einführung Informationsmodellierung Relationales Datenbankmodell Datenbanksprache SQL Einführung Daten-Abfrage-Sprache - DQL Daten-Definitions-Sprache
MehrSQL. 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:
MehrBeispiel zur referentiellen Integrität
3. Der SQL-Standard 3.14. Integrität und Trigger Seite 1 Beispiel zur referentiellen Integrität CREATE TABLE T1( k1 NUMERIC NOT NULL PRIMARY KEY); CREATE TABLE T2( k2 NUMERIC NOT NULL PRIMARY KEY, k1 NUMERIC,
MehrOracle 10g Flashback. Andrea Held Business Management Systeme Deutsche Post ITSolutions. Deutsche Post ITSolutions GmbH
Oracle 10g Flashback Andrea Held Business Management Systeme Deutsche Post ITSolutions Deutsche Post ITSolutions GmbH Agenda Flashback Technologien Architektur Anwendung Probleme Bewertung: Möglichkeiten
MehrSQL-Loader. Prof. Dr. Waldemar Rohde Dipl.-Ing. Jörg Höppner 05.05.2006 1
SQL-Loader Prof. Dr. Waldemar Rohde Dipl.-Ing. Jörg Höppner 05.05.2006 1 Beschreibung Definition transferiert Daten aus einer oder mehreren externen Dateien in eine oder mehrere Tabellen einer Oracle-Datenbank.
MehrFakultät für Informatik & Wirtschaftsinformatik DB & IS II - WS Metadaten. Andreas Schmidt Metadaten 1/17
Metadaten Andreas Schmidt Metadaten 1/17 Metadaten Metadaten sind Daten über Daten Data-Dictionary speichert Informationen über die Struktur der Daten, z.b.: Tabellen, Spalten, Datentypen Primär- und Fremdschlüssel,
MehrUniversität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6
Universität Augsburg, Institut für Informatik WS 2011/2012 Prof. Dr. W. Kießling 09. Dez. 2011 Dr. M. Endres, Dr. S. Mandl, F. Wenzel Lösungsblatt 6 Datenbanksysteme I Aufgabe 1: Deklarative Änderungsoperationen
Mehr1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL
1 Transaktionen in SQL Um Daten in einer SQL-Datenbank konsistent zu halten, gibt es einerseits die Möglichkeit der Normalisierung, andererseits sog. Transaktionen. 2 Was ist eine Transaktion Eine Transaktion
MehrOracle 10g Flashback. Andrea Held
Oracle 10g Flashback Andrea Held Seite 1-1 Agenda Flashback Technologien Architektur Anwendung Probleme Bewertung: Möglichkeiten und Grenzen Seite 1-2 Flashback Level Flashback Query Flashback Table Flashback
MehrUEB. Übungen zum Seminar 4053
Übungen zum Seminar 4053 1.1 Aufgaben zu Kapitel 1... 2 1.2 Aufgaben zu Kapitel 2... 3 1.3 Aufgaben zu Kapitel 3... 6 1.4 Aufgaben zu Kapitel 4... 8 1.5 Aufgaben zu Kapitel 5... 9 1.6 Aufgaben zu Kapitel
MehrFakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten
Fakultät für Informatik & Wirtschaftsinformatik Metadaten Metadaten sind Daten über Daten Data-Dictionary speichert Informationen über die Struktur der Daten, z.b.: Tabellen, Spalten, Datentypen Primär-
MehrCARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7
CARL HANSER VERLAG Christopher Allen Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 www.hanser.de Inhaltsverzeichnis Danksagung...XI Einleitung...XIII
Mehr