Oracle 10g Einführung



Ähnliche Dokumente
SQL (Structured Query Language) Schemata Datentypen

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Oracle 9i Einführung Performance Tuning

Informatik 12 Datenbanken SQL-Einführung

Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug Name: Note:

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

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

Aufgaben zu XPath und XQuery

R ist freie Software und kann von der Website.

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

Programmiersprachen und Übersetzer

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

Erwin Grüner

Urs Meier Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung

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

Beispiel 1: Filmdatenbank

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

BLOB oder wie kommt das Bild in

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

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

MIN oder MAX Bildung per B*Tree Index Hint

DB2 Codepage Umstellung

Datenbanken Kapitel 2

Abfragen: Grundbausteine

Advance Steel Nachverfolgung von Änderungen während der Revisionsphasen im Projekt

Referenzielle Integrität SQL

Einführung in. Logische Schaltungen

IV. Datenbankmanagement

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

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

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

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

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

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

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Text Formatierung in Excel

Datenbanken Microsoft Access 2010

Zwischenablage (Bilder, Texte,...)

Handbuch organice SQL-Reportgenerator

Dokumentation. estat Version 2.0

Bibliografische Informationen digitalisiert durch

cs241: Datenbanken mit Übungen HS 2011

NEWS von HZ.optimax-R39 & HZ.office-R39 & Toolbox Version 2016 Stand vom Softwareneuerungen und Erweiterungen

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

SQL structured query language

Testklausur 1 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten

Mehr Ergebnisse: Linguistische Funktionen und Ähnlichkeitssuche mit SQL. Carsten Czarski ORACLE Deutschland B.V. & Co KG München

Datenbanken (Bachelor) (SPO2007) WS 2011/12

Installation OMNIKEY 3121 USB

Neuheiten PROfirst KALKULATION Version 8. SQL ist sehr schnell. Neuheiten PROfirst KALKULATION Version 8 1/7

PICALIKE API DOKUMENTATION

Formale Sprachen und Grammatiken

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

Oracle SQL Tutorium - Wiederholung DB I -

Hilfe, ich verstehe meine APEX Seite nicht mehr! DOAG Development Konferenz, Düsseldorf

Datumsangaben, enthält mindestens Jahr, Monat, Tag

Prozedurale Datenbank- Anwendungsprogrammierung

Access Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli inkl. zusätzlichem Übungsanhang ACC2010-UA

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

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

Access Verbrecherdatenbank Teil 3

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

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

Kosten-Leistungsrechnung Rechenweg Optimales Produktionsprogramm

TREND SEARCH VISUALISIERUNG. von Ricardo Gantschew btk Berlin Dozent / Till Nagel

Klausur Interoperabilität

Benutzerhandbuch Archivierung

Doku zur Gebäudebrüter Datenbank

Oracle: Abstrakte Datentypen:

Erfahrungen mit Hartz IV- Empfängern

Einführung in die technische Informatik

Themen des Kapitels. 2 Grundlagen von PL/SQL. PL/SQL Blöcke Kommentare Bezeichner Variablen Operatoren. 2.1 Übersicht. Grundelemente von PL/SQL.

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.

SQL. Fortgeschrittene Konzepte Auszug

egovernment für das Open Source CMS Contao

Übersicht über Datenbanken

Objektrelationale Datenbanken

Vorwort. Zu dieser Reihe. Autoren. Vorwort

Theorie der Informatik

Freigabemitteilung Nr. 39. Neue Funktionen adresse zurücksetzen / ändern Kennung ändern Anlegen von OCS (elektr. Postfach) Mailbenutzern

1. Speicherbausteine JK-RS-Master-Slave-Flip-Flop

Sybase Central Dokumentation Aktivierung der Monitoringfunktion

Labor 3 - Datenbank mit MySQL

OPERATIONEN AUF EINER DATENBANK

Anwenderdokumentation AccountPlus GWUPSTAT.EXE

APEX URLs Suchmaschienen- und Benutzerfreundlich

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration

Artikel Schnittstelle über CSV

Grundlagen Datenbanken Sommersemester 2008

Errata-Liste zum Kurs: Einführung in XML (2. Auflage)

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

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

Auswahlabfragen mit ACCESS

LDAP Konfiguration nach einem Update auf Version 6.3 Version 1.2 Stand: 23. Januar 2012 Copyright MATESO GmbH

SOLISYON GMBH TOBIAS GRUBER BEN WEISSMAN. Analyse von Dimensions-Schlüsselfehlern bei der Aufbereitung von SSAS Datenbanken

Outlook und Outlook Express

Transkript:

Kurs Oracle 10g Einführung Teil 7 Einige interessante SQL und PL/SQL Erweiterungen für Administratoren Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 19 Seite 1 von 19

Agenda 1 Einführung 2 Reguläre 3 Native Datentypen 4 Mit Tabellen schon während einer Aktualisierung lesen 5 Cost Based Optimizer Timo Meyer Sommersemester 2006 Seite 2 von 19 Seite 2 von 19

1 Einführung Verbesserungen von SQL und PL /SQL in vielen unterschiedlichen Bereichen Entwickelt in besonderer Hinsicht auf Content Management Systeme Einführung Installation Business Intelligence E-Business Bioinformatik Seite 3 von 19 Timo Meyer Sommersemester 2006 Seite 3 von 19

2 Reguläre Ein regulärer Ausdruck (engl: regular expression) ist eine Folge von normalen Textzeichen und / oder Spezialzeichen, mit deren Hilfe komplexe Textmuster beschrieben werden können Mit regulären n lassen sich sehr komplexe Textmuster definieren, nach denen ein Text durchsucht werden kann. Mögliche Einsatzgebiete für regular expressions sind das Suchen bestimmter Muster in einer Zeichenkette (engl: matching) das Extrahieren bestimmter Muster aus Zeichenketten das Ersetzen von bestimmten Mustern bzw. Zeichen (engl: substitution) Reguläre Migration Seite 4 von 19 Timo Meyer Sommersemester 2006 Seite 4 von 19

2 Reguläre Reguläre sind in SQL und PL/SQL verfügbar und unterstützen die Datentypen CHAR, VARCHAR2, CLOB, NCHAR, NVARCHAR und NCLOB Deshalb Erweiterung der existierenden SQL- Funktionen LIKE, SUBSTR, INSTR und REPLACE um folgende neue Funktionen: REGEXP_LIKE stellt ähnlich wie der LIKE-Operator fest, ob Muster sich gleichen REGEXP_SUBSTR gibt Teilstrings aus, die dem Muster entsprechen REGEXP_INSTR stellt fest an welcher Stelle das Muster eine Entsprechung findet REGEXP_REPLACE sucht und ersetzt Muster Darüber hinaus können PL/SQL-Prozeduren geschrieben werden, um den bestehenden Funktionsumfang zu ergänzen Timo Meyer Sommersemester 2006 Seite 5 von 19 Reguläre Migration Seite 5 von 19

2 Reguläre Operatoren Beschreibung \ Definiert Operator, Nachfolgendes Zeichen als nicht Metazeichen * 0 oder mehr Vorkommen + 1 oder mehr Vorkommen? 0 oder 1 Vorkommen a b Alternierend, entweder a oder b ^ Zeichen am Anfang $ Zeichen am Ende. Beliebiges Zeichen [abc] Entwerder a oder b oder c ( ) Gruppiert einen Ausdruck {m} Genau m mal {m,} Mindestens m mal {m,n} Mindestens m mal aber nicht n mal [:cc:] Genügt der Klasse cc, cc = all alphabetischen Zeichen oder Zahlen [=ec=] ec, ce definiert Äquivalenz zwischen Klassen Timo Meyer Sommersemester 2006 Seite 6 von 19 Reguläre Migration Seite 6 von 19

2 Reguläre REGEXP_LIKE Stellt fest, ob Muster existieren Findet Namensvariationen Timo Meyer Tymo oder Timo Meier oder Meyer SELECT c1 FROM t1 WHERE REGEXP_LIKE(c1, T?mo M(ei ey)er ); Tymo Meier Timo Meyer Tymo Meier Timo Meyer Timo Meyer Sommersemester 2006 Seite 7 von 19 Reguläre Migration Seite 7 von 19

2 Reguläre REGEXP_SUBSTR Stellt fest, welcher Text am Besten ergänzt wird Ergänzt selbständig durch Einbeziehung und Prüfung des Kontexts Reguläre Migration SELECT REGEXP_SUBSTR( I am the real Timo Meyer, T?mo M(ei ey)er ) FROM dual; Timo Meyer Seite 8 von 19 Timo Meyer Sommersemester 2006 Seite 8 von 19

2 Reguläre REGEXP_INSTR Findet die Anzahl der Übereinstimmungen heraus Findet das gesucht Wort, auf Grund der Übereinstimmungen Reguläre Migration SELECT REGEXP_INSTR( I am the real Timo Meyer, T?mo M(ei ey)er ) FROM dual; 15 Seite 9 von 19 Timo Meyer Sommersemester 2006 Seite 9 von 19

2 Reguläre REGEXP_REPLACE Ersetzt selbständig den passenden Text Gibt alternative Schreibweise mit aus SELECT REGEXP_REPLACE ( I am the real Timo Meyer, T?mo M(ei ey)er, Timo Meier ) FROM t1; Reguläre Migration I am the real Timo Meyer Timo Meyer Sommersemester 2006 Seite 10 von 19 Seite 10 von 19

2 Reguläre Verwendet mit DDL Filtert die erlaubten Daten mit Check Constraint heraus PLZ-Spalte ist VARCHAR2(5), kann bis zu 5 Zeichen aufnehmen Reguläre Migration Abfrage wird unterteilt und formatiert in einer bestimmten Ansicht ausgegeben Unterteilt die Telefonnummer in folgende Blöcke (xxx) xxx-xxxx Erstellt einen funktionsbasierten Index Seite 11 von 19 Timo Meyer Sommersemester 2006 Seite 11 von 19

2 Reguläre Verwendet mit PL/SQL Sehr leistungsfähige Fähigkeit bei String- Manipulationen src := REGEXP_REPLACE (src, <regexp_1> ); src := REGEXP_REPLACE (src, <regexp_2> ); src := REGEXP_REPLACE (src, <regexp_3> ); Verbesserung der existierenden Funktionen Unterstüzt Kurzschreibweise von Pearl Vereinfacht Ersetzt sehr viele Quellcodezeilen auf einmal Funktionen für String-Manipulationen können vereinfacht werden Reguläre Migration Seite 12 von 19 Timo Meyer Sommersemester 2006 Seite 12 von 19

3 Native Datentypen In früheren Version von Oracle war der Datentyp NUMBER der einzige numerische Datentyp, der in der Datenbank unterstützt wurde Die Kompabilität zu Java, XML und anderen Anwendungen in der Bioinformatik erforderten eine Datentypeinführung an den IEEE-Standard (Institute of Electrical and Electronics Engineers) für binäre Fließkommazahlen In OLAP und Data Mining wurden zwei neue native Fließkommadatentypen eingeführt: BINARY_FLOAT 32 Bit IEEE 754 Format BINARY_DOUBLE 64 Bit IEEE 754 Format Seite 13 von 19 Timo Meyer Sommersemester 2006 Seite 13 von 19

3 Reguläre Praxisbeispiel PL/SQL Erweiterungen in PL/SQL ermöglichen z.b. die Berechnung von Sinus, Cosinus und die Durchführung von Floating-Point Operationen Beispiel: Berechnung der Zahl π nach Euler Timo Meyer Sommersemester 2006 Seite 14 von 19 ca. 300.000 Wiederholungen benötigte Rechenzeit mit Variable NUMBER 27.7 sec benötigte Rechenzeit mit Variable BINARY_DOUBLE 3.7 sec 7-fache Zeitersparnis!!! Seite 14 von 19

3 Reguläre Praxisbeispiel Native Floating-Point- Constraints create table floating_point_table2 ( dblprm binary_double constraint dbl_prm primary key, fltfrn binary_float constraint flt_frn references floating_point_table1(fltprm) on delete cascade ); Timo Meyer Sommersemester 2006 Seite 15 von 19 Seite 15 von 19

4 Mit Tabellen während einer Aktualisierung lesen Folgendes Beispiel ermöglicht es dem Administrator Tabellen zu lesen, während diese aktualisiert werden SELECT * FROM employees t WITH (NOLOCK) INNER JOIN roysched r WITH (NOLOCK) ON t.title_id = r.title_id; Die Anweisungen WITH(NOLOCK) müssen immer nach dem Tabellennamen oder nach einem Alias erfolgen Seite 16 von 19 Timo Meyer Sommersemester 2006 Seite 16 von 19

5 Cost Based Der Optimizer ermittelt, welche Zugriffsmethode auf eine Tabelle die schnellst ist unter Berücksichtigung der Kostenersparnis Performance Tuning und Stored Procedures erlauben es dem Optimizer nicht immer den idealen Execution Plan durchzuführen Als Administrator kann man eine Ausführungsmethode erzwingen, folgende Optionen sind hinzugekommen Timo Meyer Sommersemester 2006 Seite 17 von 19 Seite 17 von 19

5 Cost Based SELECT /*+ SPREAD_MIN_ANALYSIS */... (Reduces compilation time) SELECT /*+ CARDINALITY ( [tablespec] card ) */ SELECT /*+ SELECTIVITY ( [tablespec] sel ) */ SELECT /*+ NO_USE_NL ( employees ) */ SELECT /*+ NO_USE_NL ( employees ) */... SELECT /*+ NO_USE_MERGE ( employees dept ) */... Syntax: /*+ NO_INDEX_FFS ( tablespec indexspec ) */ /*+ CPU_COSTING (tablespec indexspec) */ /*+ NO_INDEX_SS (tablespec indexspec ) */ SELECT /*+ NO_USE_HASH ( employees dept ) */... Seite 18 von 19 Timo Meyer Sommersemester 2006 Seite 18 von 19

Fragen Timo Meyer Sommersemester 2006 Seite 19 von 19 Seite 19 von 19