Oracle 10g Einführung

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

SQL structured query language

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

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Bibliografische Informationen digitalisiert durch

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

Datenbanken SQL. Insert, Update, Delete, Drop. Krebs

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15

Abfragen (Queries, Subqueries)

Views in SQL. 2 Anlegen und Verwenden von Views 2

Übersicht der wichtigsten MySQL-Befehle

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

Datenmanagement I SoSe 2006 Aufgabenblatt 4

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

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

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen. Galileo Press

Introduction to Data and Knowledge Engineering. 6. Übung SQL

Lösungen der Übungsaufgaben von Kapitel 10

1 Hartmann Anna Cäcilienstr Köln (0221) Behrens-Hoffmeister Heidi Lindenweg Köln (0221)

Übung PL/SQL Trigger Lösungen

Datenbank und Tabelle mit SQL erstellen

Datenbanken. Zusammenfassung. Datenbanksysteme

Wiederholung VU Datenmodellierung

SQL-Befehlsliste. Vereinbarung über die Schreibweise

ACCESS SQL ACCESS SQL

Erstellen einer Datenbank. Datenbankabfragen

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

Labor 3 - Datenbank mit MySQL

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

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

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

Datenbanksysteme 2013

Abbildung 1: Das ERM. Nun zu den Tabellen: Zunächst wird aus jeder Entity eine Tabelle, d.h. wir erhalten:

SQL-Befehlsliste. Vereinbarung über die Schreibweise

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

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

SQL Data Manipulation Language (DML) und Query Language (QL)

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL

5.8 Bibliotheken für PostgreSQL

105.3 SQL-Datenverwaltung

select DISTINCT Name, ort From Verkauf; selektiert Name und Ort von Tabelle Verkauf - DISTINCT steht dass keine Zeile mehrfach vorkommt

SQL-Sprachvielfalt. Peter Willadt (Ludwig-Erhard-Schule) SQL-Befehle / 47

SQL,Teil 2: SELECT. W. Spiegel. Übersicht SELECT. Mehrfache Werte vermeiden: SELECT DISTINCT. Ausgabe ordnen: ORDER BY. Projektion.

Kapitel 8: Datenintegrität

Folien php/mysql Kurs der Informatikdienste

Datenschutz: Zugriffsrechte in SQL

A Datendenition in SQL ( Punkte)

dbis Praktikum DBS I SQL Teil 2

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

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Oracle 9i Einführung Performance Tuning

SQL als Zugriffssprache

ARBEITSBLATT ZUR SQL-BEFEHLEN

Die Anweisung create table

Übungsaufgaben mit Lösungen

SQL und MySQL. Kristian Köhntopp

IV. Datenbankmanagement

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

Inhaltsverzeichnis. Einleitung

MNR NAME VORNAME STRASSE PLZ ORT TELEFON

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

4. Objektrelationales Typsystem Kollektionstypen. Nested Table

Erstellen und Verwalten von Tabellen

Wirtschaftsinformatik (PWIN) 6. Mentorium. Wirtschaftsinformatik (PWIN), SS 2010, Professur für Mobile Business & Multilateral Security 1

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

SQL-Anweisungen. SELECT (SQL Data Query Language)

DB2 SQL, der Systemkatalog & Aktive Datenbanken

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

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

Kapitel 5: Sortieren, Gruppieren und Views in SQL

Relationentheorie grundlegende Elemente

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Tabellen verknüpfen: Joins

Microsoft Access 2010 SQL nutzen

Inhaltsverzeichnis. jetzt lerne ich

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #5. SQL (Teil 3)

9. Sicherheitsaspekte

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

Einführung in die Spezialisierungsrichtungen

Unterabfragen (Subqueries)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)

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

Erzeugung und Veränderung von Tabellen

Datenorientierte Systemanalyse. 07/05/2013 Axel Polleres

Datenbanksysteme Kapitel 5: SQL Data Manipulation Language

DBSP. Vorlesung. Prof. Dr. rer. nat. Nane Kratzke. Unit. Praktische Informatik und betriebliche Informationssysteme

Datenbanken. Datenintegrität + Datenschutz. Tobias Galliat. Sommersemester 2012

Datenbanken Einführung Seite 1 von 7

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

quick documentation Inhalt Datenmodellierung

Datenbank Grundlagen. Performanceuntersuchungen

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

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

Einführung in SQL Datenbanken bearbeiten

Transkript:

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 und Rechtevergabe Einführung 3 Projektion und Selektion 4 Verbund von Tabellen (Joins) 5 Sortieren und Einfügen von Datensätzen 6 Ändern und Löschen von Datensätzen Timo Meyer Sommersemester 2006 Seite 2 von 16 Seite 2 von 16

1 Tabellen und Views erstellen Tabelle anlegen CREATE TABLE <tabellen_name> ( <feldname_1><feldtyp_1>,... <feldname_x><feldtyp_x> ) Tabellen Installation / Views View (Sicht) anlegen CREATE VIEW <view_name> AS <select-kommando> Seite 3 von 16 Timo Meyer Sommersemester 2006 Seite 3 von 16

2 Indizes und Rechtevergabe Index anlegen CREATE INDEX <index_name> ON <tabellen_name> (<feldliste) Berechtigungen vergeben GRANT ON TO <privileg> <table> <benutzer_oder_rolle> <privileg> = select, update, insert, delete,... Indizes Migration / Rechte Seite 4 von 16 Timo Meyer Sommersemester 2006 Seite 4 von 16

SQL-Beispiele -- Entity Arzt CREATE TABLE arzt ( nr NUMBER(4), name VARCHAR(30), vorname VARCHAR(30), titel VARCHAR(20), facharzt VARCHAR(50),... ) PRIMARY KEY (nr) Timo Meyer Sommersemester 2006 Seite 5 von 16 -- Entities Patient+Untersuchung CREATE TABLE patient ( -- Patient nr NUMBER(4), name VARCHAR(30), geschlecht NUMBER(1),... -- Aufnahmeuntersuchung aufn_arzt_nr NUMBER(4), aufn_datum DATE, aufn_gewicht NUMBER(4,1),... -- Abschlussuntersuchung... ) PRIMARY KEY (nr), FOREIGN KEY(auf_arzt_nr) REFERENCES arzt(nr) Seite 5 von 16

SQL-Beispiele -- Schnelle Suche nach n CREATE INDEX i_patient_name ON patient(name) -- View ohne personenbezogene Daten -- für Datenschutz CREATE VIEW v_patient_datenschutz AS SELECT -- Patient nr, name, geschlecht,... -- Aufnahmeuntersuchung aufn_arzt_nr, aufn_datum,...... FROM patient Timo Meyer Sommersemester 2006 Seite 6 von 16 Seite 6 von 16

SQL-Beispiele -- Benutzergruppe (Rolle) auswertung -- hat keinen direkten Zugang REVOKE ALL ON patient FROM auswertung -- Benutzer darf aber den View lesen -- (nicht ändern!) GRANT select ON v_patient_datenschutz TO auswertung Timo Meyer Sommersemester 2006 Seite 7 von 16 Seite 7 von 16

3 Projektion und Selektion Projektion : Ausblenden von Spalten SELECT name, titel FROM arzt Müller Vogel Titel Prof. Dr. Assistent Selektion : Ausblenden von Zeilen SELECT * FROM personal WHERE nr=320 320 Vogel Vorname Fidelis Titel Assistent Facharzt HNO Seite 8 von 16 Timo Meyer Sommersemester 2006 Seite 8 von 16

4 Verbund von Tabellen (Joins) Arzt Müller Vorname Joseph Titel Prof. Dr. Facharzt HNO 320 Vogel Fidelis Assistent HNO Patient 306 310 Meyer Timo Horzella Saskia Geschlecht 1 0 Aufn_arzt_nr 310 a) Verbund (cartesisches Produkt, Kreuzprodukt) SELECT * FROM arzt, patient 320 Müller Vogel 306 310 Meyer Timo Horzella Saskia Aufn_arzt_nr 310 Seite 9 von 16 Timo Meyer Sommersemester 2006 Seite 9 von 16

4 Verbund von Tabellen (Joins) Arzt Müller Vorname Joseph Titel Prof. Dr. Facharzt HNO 320 Vogel Fidelis Assistent HNO Patient 306 310 Meyer Timo Horzella Saskia Geschlecht 1 0 Aufn_arzt_nr 310 b) Natürlicher Verbund über gemeins. Attribut SELECT * FROM arzt, patient WHERE arzt.nr = patient.auf_arzt_nr Aufn_arzt_nr Müller 310 Horzella Saskia Seite 10 von 16 Timo Meyer Sommersemester 2006 Seite 10 von 16

4 Verbund von Tabellen (Joins) c) Äußerer Verbund (outer join, left join) SELECT * FROM arzt, patient WHERE arzt.nr = patient.auf_arzt_nr(+) 320 Müller Vogel 310 NULL Horzella Saskia NULL Aufn_arzt_nr NULL Der äußere Verbund liefert zusätzlich zum natürlichen Verbund auch die Datensätze aus der ersten Tabelle ohne Partner in der zweiten Tabelle. Die Felder, die aus der zweiten Tabelle stammen, werden hierbei mit dem NULL-Wert (undefiniert) gefüllt. Seite 11 von 16 Timo Meyer Sommersemester 2006 Seite 11 von 16

5 Sortieren und Einfügen von Datensätzen Abfragen und Sortieren SELECT <feldliste> FROM <tabellen> [WHERE <bedingung>] [ORDER BY <feldliste>] Einfügen von Datensätzen INSERT [(<feldliste>)] INTO <tabellen> VALUES (<wertliste>) Seite 12 von 16 Timo Meyer Sommersemester 2006 Seite 12 von 16

6 Ändern und Löschen von Datensätzen Ändern von Datensätzen UPDATE <tabelle> SET <feld> = <wert>,... [WHERE <bedingung>] Löschen von Datensätzen DELETE FROM <tabelle> [WHERE <bedingung>] Timo Meyer Sommersemester 2006 Seite 13 von 16 Seite 13 von 16

SQL-Beispiele -- Aufnahmeliste letzte Woche -- sortiert nach Arzt SELECT * FROM patient WHERE aufn_datum > sysdate - 7 ORDER BY aufn_arzt_nr -- Aufnahmeliste Männer, -- sortiert nach Datum und SELECT * FROM patient WHERE geschlecht = 1 ORDER BY aufn_datum, name Seite 14 von 16 Timo Meyer Sommersemester 2006 Seite 14 von 16

SQL-Beispiele -- Anzahl unplausibler oder fehlender -- Gewichtsangaben SELECT COUNT(*) FROM patient WHERE aufn_gewicht > 150 OR aufn_gewicht < 50 OR aufn_gewicht IS NULL -- Durchschnittsgewicht nach Geschlecht SELECT geschlecht, AVG(aufn_gewicht) AS durchschnittsgewicht FROM patient GROUP BY geschlecht Timo Meyer Sommersemester 2006 Seite 15 von 16 Seite 15 von 16

Fragen Timo Meyer Sommersemester 2006 Seite 16 von 16 Seite 16 von 16