Tipp des Monats

11.
September
2023

Will man Gruppenfunktionen zusammen mit einzelnen Spalten verwenden, so muss grundsätzlich nach allen Einzelspalten gruppiert werden, auch wenn beispielsweise eine Id immer auch den zugehörigen Namen und alle übrigen Werte des Datensatzes impliziert. Das erzeugt einen Overhead, der ab Version 21c teilweise umgangen werden kann.

01.
Februar
2023

Analytische Funktionen sind weniger verbreitet als beispielsweise Gruppenfunktionen, erfreuen sich aber im Data Warehouse-Umfeld großer Beliebtheit. Mit Version 21c kamen auch Syntax-Erweiterungen zu analytischen Funktionen, die in diesem Tipp beschrieben werden sollen.

02.
August
2021

Identity Columns sind nicht mehr so ganz neu. Trotzdem wird vielfach nach wie vor mit eigenen Sequences und Triggern gearbeitet. Teils spielen da sicher alte Gewohnheiten eine Rolle, teils wird der Trigger sowieso auch zu anderen Zwecken benötigt. In so manchem Fall ist aber vermutlich auch mangelndes Wissen der ausschlaggebende Faktor. Dabei bieten Identity Columns mancherlei Vorteile.

05.
Februar
2017

Das JSON-Format (JavaScript Object Notation) erfreut sich zunehmender Beliebtheit, da es im Vergleich zu XML wesentlich weniger Overhead hat. Ausserdem ist es einfacher; es kennt im wesentlichen nur Wertepaare und Arrays. Diese können hierarchisch aufgebaut sein und entsprechen der Javascript-Notation.

03.
September
2016

Die Suche geht weiter - Performance-Analyse von SQL-Statements mit SQLT.

04.
August
2016

Die Suche beginnt  - Schon seit Ewigkeiten gibt es ein Tool zur Performance-Analyse von SQL-Statements... 

05.
Juli
2016

STATSPACK ist ein, mit jeder Oracle Datenbank mitgeliefertes, kostenloses Tool zur Auswertung der Performance. Die meisten Datenbank-Administratoren, die schon einmal mit einem Performance-Problem konfrontiert wurden, haben mit Sicherheit einen STATSPACK-Report erzeugt und diesen analysiert.

11.
Januar
2015

Oracle hat das Berechtigungskonzept zu PL/SQL in Hinblick auf zwei gegensätzliche Szenarien in 12c ausgebaut:

26.
August
2013

Die Heat Map zeichnet auf Blockebene den Datenzugriff und die Veränderungshäufigkeit auf.

Mit diesem Wissen kann man Daten, die selten verwendet oder verändert werden, an Ort und Stelle komprimieren und auf einen anderen Tablespace (auf ein langsameres und billigeres Medium) verschieben.

29.
Juli
2013

Oracle hat in der Version 12c die WITH Klausel erweitert, so dass nun auch Funktionen oder Prozeduren verwendet werden können.
 

20.
Juli
2013

Im folgenden Tipp zu Neuerungen in Oracle 12c beschäftigen wir uns mit der Verschleierung bzw. Maskierung von Daten über das Package DBMS_REDACT.

Beachten Sie bitte, dass diese Funktion nur in der Enterprise Edition mit Advanced Security Option verwendet werden darf.

Ein Beispiel, das sich dazu nahezu aufdrängt, sind Kreditkartennummern, die nicht in ihrer vollen Schönheit in einem Report ausgegeben werden sollen. Wir erstellen also eine kleine Tabelle für die Kreditkarteninfos:

01.
August
2012

Sie wollen SQL-Statements in Perl verwenden und an das Datenbanksystem ORACLE senden und die Ergebnisse verarbeiten? Dazu kann das Modul DBI (Database Interface) verwendet werden. Was ist DBI? DBI ist das Standard-Datenbank-Interface-Modul für Perl. Es dient als Vermittler zwischen dem Programm und einer Reihe datenbankspezifischer Treiber (DBD), die dann mit der eigentlichen Datenbank kommunizieren.

05.
März
2012

Vor einiger Zeit habe ich eine Verbindung zwischen einer Oracle Datenbank Standard Edition 11.2 und einer MySQL Datenbank hergestellt. Nach Einrichtung des Gateways hat das auch soweit funktioniert.

03.
Februar
2012

Der Result Cache ist ein - leider auf die Enterprise Edition beschränktes - Feature, das mit Version 11g eingeführt wurde. Er ist sowohl in SQL für Select-Befehle als auch in PL/SQL für Funktionsaufrufe nutzbar. Die Idee dahinter ist in beiden Fällen, dass das Ergebnis bei der ersten Ausführung gespeichert wird und bei weiteren Aufrufen der Befehl selber nicht mehr ausgeführt, sondern das Ergebnis aus dem Cache abgerufen wird. Um Tom Kyte zu zitieren: "Everyone knows the fastest way to do something is – to not do it".

06.
September
2011

Zum Löschen von doppelten Datensätzen gibt es eine ganze Reihe von Ansätzen. Die Suche nach der Schlagwort-Kombination duplicate delete und Oracle ergibt bei Google ca. 451.000 Treffer. Viele der Methoden funktionieren hervorragend bei den 10 bis 30 Beispieldatensätzen, die meist auch keine NULL-Werte enthalten. Wenn die Tabellen aber größer werden, stellt sich die Frage nach der performantesten Methode.

02.
August
2010

Die häufigsten Einsatzfälle dürften sein: eine Suche unabhängig von Groß-/Kleinschreibung zu machen, indem man einen Index auf UPPER(spalte) legt, oder - normalerweise nicht indizierte - NULL-Werte für die Indizierung zugänglich zu machen durch NVL(spalte, ...).

04.
April
2010

Mit dem Release 11.2 hat Oracle eine Erweiterung des CREATE TABLE Statements eingeführt. Es handelt sich um die verzögerte Segmenterzeugung oder DEFERRED SEGMENT CREATION.

Was macht dieses neue Feature? Wird eine neue Tabelle erzeugt, werden nur die Metainformationen angelegt, aber noch kein Segment im Tablespace erzeugt. Das bedeutet, dass...

03.
Februar
2010

Seit der Version 7 bietet Oracle die Möglichkeit der Volltextsuche. Die frühen Optionen mußten noch separat installiert werden und in der Oracle -Version 8i war die Textsuche in das kostenpflichtige Zusatzmodul interMedia integriert. Seit Version 9i ist Oracle Text jedoch fester Bestandteil der Datenbank, auch in der Express Edition.

03.
August
2009

In jeder Oracle Datenbank mit mehr als einer Session kann es zu Konflikten mit Sperren kommen. Sperren, in der Datenbanksprache Locks genannt, verhindern unter anderem, dass mehrere Benutzer zur gleichen Zeit die gleiche Zeile einer Tabelle verändern können.

03.
April
2009

Eine immer wiederkehrende Fragestellung - z.B. bei der Erstellung von Berichten - lautet vereinfacht: "Wie mache ich Zeilen zu Spalten?" Das heisst, Sie haben normalisierte Tabellen, wollen aber den Inhalt gruppieren und in Form einer Kreuztabelle (auch Pivot Tabelle genannt) darstellen.

02.
März
2009

Sie wollten schon häufiger Datenbankdateien von einem Server A auf den Server B kopieren und waren aber gerade nicht in der Lage sich lokal mit einem der Server zu verbinden und anschließend den anderen zu mounten? Oder es war Ihnen schlichtweg zu umständlich? Dann haben wir hier vielleicht eine ganz praktische Lösung für Sie.

03.
Dezember
2008

In diesem Monatstipp befassen wir uns mit der Erstellung eines Spool-file als HTML Dokument. 

Mit dem SQL*Plus Befehl Set Markup HTML ON [SPOOL ON] lässt sich leicht ein Report bzw. ein ganzes Spool-file als HTML-Datei ausgeben. Dies ist nützlich, falls Sie beispielsweise einen Report in eine Webanwendung einbauen möchten...

02.
September
2008

Die regulären Ausdrücke waren schon einmal Thema eines Monatstipps (April 2004), als sie mit der Oracle Version 10g als Neuerung erschienen waren. 

Diesmal soll es vor allem um einfache Anwendungsbeispiele für die Funktionen REGEXP_LIKE, REGEXP_SUBSTR und REGEXP_REPLACE gehen.

03.
August
2008

Wird es wieder mal eng im Tablespace?

In unserem heutigen Tipp wollen wir ein neues Feature der Oracle Datenbank 11g etwas näher vorstellen:

OLTP Tabellenkompression

01.
Juli
2008

Hatten Sie auch schon mal mit (einfachen) Anführungszeichen (… ' …) in Ihrer Datenbank zu kämpfen?

 

04.
Juni
2008

Eigentlich bin ich ja ein großer Oracle Fan. Aber manchmal ärgere ich mich auch über Unzulänglichkeiten der Software. Es gibt tolle Flanken, aber keine Torverwertung..

05.
Januar
2008

Wollten Sie schon immer auf einfache Art und Weise Ihre Constraints umbenennen, damit Sie sofort erkennen, um welchen Typ es sich handelt (beispielsweise in Fehlermeldungen, in welchen eine Verletzung eines Constraints bemerkt wird)? Dann haben wir jetzt den passenden Tipp für Sie, mit dem Sie alle Ihre Constraints mit wenig Aufwand umbenennen können.

02.
Dezember
2007

Über das FLASHBACK-Konzept und seine Anwendung haben wir Sie bereits in den Tipps für August 2006 und März 2005 ausführlich informiert. Hier und jetzt soll Ihnen noch eine weitere Möglichkeit vorgestellt werden, die bislang noch gar nicht erwähnt wurde und ab Version 10.2 verfügbar ist: RESTORE POINTS.

04.
Oktober
2007

Haben wir uns nicht alle schon mal darüber geärgert, dass auf NULL

Spalten nur mit der folgenden Klausel abgefragt werden kann:

04.
September
2007

Wollten Sie immer schon mal eine Ausgabe, die nur wenige Spalten besitzt, Platz sparend ausgeben?

 

 

03.
April
2007

Haben Sie sich auch schon mal gewünscht, dass SQL*Plus einen Monat als schönen Kalender darstellt? Mit der folgenden Funktion können Sie sich den aktuellen Monat (Default) oder einen beliebig anderen Monat anzeigen lassen

05.
Oktober
2006

In unserer täglichen Praxis erleben wir häufig, dass Indizes beim Kunden sehr groß geworden sind. Wie kann man nun herausfinden, ob der Index ein Kandidat für einen Neuaufbau ist?

02.
August
2006

Haben Sie bereits auf 10g umgestellt? Falls ja, haben Sie sich vielleicht schon einmal gewundert, warum Sie nach dem Löschen einer Tabelle keinen freien Speicherplatz gewonnen haben, aber dafür plötzlich Objekte mit Namen BIN$c7WXyzMkT1q9DglxITmbRw==$0 (oder so ähnlich) vorhanden sind?

06.
Juli
2006

Viele Administratoren kennen das Problem, zu wenig Platz auf ihren Platten zur Verfügung zu haben und daher kurzfristig Platz frei machen zu müssen. Da fällt einem dann sofort der Undo und Temp Tablespace ein, die eigentlich immer zu groß sind. Kann man diese aber überhaupt verkleinern?

04.
Mai
2006

Was passiert eigentlich bei einem Sortiervorgang in Ihrer Datenbank?

06.
Februar
2006

Ist es Ihnen schon häufiger passiert, dass Sie Änderungen an Ihren Daten vornehmen wollten und dabei in bestehende Tabellen- oder Zeilensperren gelaufen sind? Im unangenehmsten Fall „hängte“ sich Ihre Session solange auf, bis die gesperrten Zeilen wieder freigegeben wurden...

Jede Menge Know-how für Sie!

In unserer Know-How Datenbank finden Sie mehr als 300 ausführliche Beiträge zu den Oracle-Themen wie DBA, SQL, PL/SQL, APEX und vielem mehr.
Hier erhalten Sie Antworten auf Ihre Fragen.