Oracle: “Delete if exists” & “Drop if exists” Befehl

Um auf einfache Weise in Oracle eine Tabelle, Prozedure, View, Funktion usw. zu löschen, nutzen Sie folgenden Befehl. Dabei wird die Exception (Fehlermeldung / Ausnahmefehler) unterdrückt, sodaß Ihr Script oder Programm fehlerfrei weiter laufen kann: begin execute immediate ‘DROP TABLE NAME_DER_TABELLE’; exception when others then null; end Oder für eine Prozedur (Stored Procedure): begin execute [...]

PHP & Oracle: PHP Datum & Oracle Datum vergleichen / umrechnen

Unter PHP haben Sie z.Bsp. mit folgendem Code ein Zeitstempel erzeugt: <?php startdatum = time(); ?> In einer Oracle Datenbank wurde dieser Zeitstempel in einem Feld vom Typ “number” abgespeichert. Nun möchten Sie diese Werte vergleichen. Nutzen Sie dafür folgendes SQL Statement: select startdatum, to_date(’01.06.2009′, ‘dd.mm.yyyy’), to_char(TO_DATE(’19700101000000′, ‘YYYYMMDDHH24MISS’) + NUMTODSINTERVAL(startdatum, ‘SECOND’), ‘dd.mm.yyyy hh24:mi’) from Tabellenname [...]

PHP: Zeilenumbruch (\n) aus String entfernen

Um einen Zeilenumbruch (“\n”) aus einem String (Zeichenkette) zu entfernen, nutzen Sie bitte folgende Befehlsfolge: $var = “Zeile\nmit Zeilenumbrüchen\nEnde der Zeile”; $var = str_replace(“\r\n”, ”, $var); $var = str_replace(“\n”, ”, $var); $var = str_replace(chr(13), ”, $var);

PHP: Jahreszahl auf Schaltjahr prüfen

Nutzen Sie den folgenden Beispiel-Source um in PHP bei einer Jahreszahl zu prüfen, ob es ein Schaltjahr ist: function is_leapyear($year = 2000) { return date(‘L’, strtotime(“$year-1-1″)); } Beispielaufruf: if (is_leapyear(2008)) echo “2008 ist ein Schaltjahr”; else echo “2008 ist kein Schaltjahr”;

Oracle: Größe von Tabellen berechnen (in GB, MB, KB oder Byte)

Damit Sie die Größe (das Volumen) Ihrer Tabellen ausrechnen können, nutzen Sie folgenden SQL Befehl: SELECT TableName, TABLESPACE_NAME, sum(mb) FROM ( SELECT nvl2(l.segment_name, l.table_name, s.segment_name) TableName, s.TABLESPACE_NAME, bytes / 1024 / 1024 mb FROM user_segments s, user_lobs l WHERE s.segment_name = l.segment_name(+) AND ROUND(bytes / 1024 / 1024) > 0 ORDER BY 1, 2) GROUP [...]

mySQL: Alte MD5 Passwörter – OLD_PASSWORD()

In alten mySQL Versionen (vor V4.1) wurde für die Passwortverschlüsselung ein 16 Zeichen langer MD5 Hash genutzt (sh. auch unseren Arikel “Sicherheit: MD5 Hash decodieren / entschlüsseln (16 stelligen Hash)“). Diese Technik war (und ist) unsicher und daher wurde ab Version 4.1 auf den 32 Zeichen langen MD5 Hash umgestiegen. Dieser gilt heute als Standard [...]

Oracle: Stored Procedures mit dynamischen SQL Befehlen

Um innerhalb einer “Stored Procedure” oder “Function” in Oracle Parameter in eine SQL Abfrage einzubauen, können Sie folgendes Beispiel als Vorlage nutzen: CREATE OR REPLACE PROCEDURE SP_TESTS (in_condition IN VARCHAR2) IS ret_value number; Ssql varchar2(4000); BEGIN DBMS_OUTPUT.PUT_LINE(‘Start …’); — Prüfen, ob eine Bedingung übergeben wurde — Fall nicht, where mit “1=1″ ergänzen lassen if (in_condition [...]

Sicherheit: MD5 Hash decodieren / entschlüsseln (16 stelligen Hash)

Der folgende C Source kann ggf. Ihnen helfen, vergessene MD5 Passwörter (nur 16-stelligen Hash) wieder zu erhalten. Dabei werden nur Passwörter mit bis zu 8 Zeichen berechnet. Außerdem können nicht alle Sonderzeichen berücksichtigt werden. Von Decodieren bzw. Entschlüsseln kann aufgrund der angewendeten Methoden nicht geredet werden. Das genannte MD5 Verfahren hat mathematische Lücken und wurde [...]

Oracle: Tabellen einer Datenbank mit Anzahl der Datensätze auflisten

Mit dieser Funktion erhalten Sie alle Tabellen der Datenbank inkl. der aktuellen Anzahl an gespeicherten Datensätzen. Zusätzlich werden die Summen (Tabellenanzahl, Datensätze) angezeigt: declare cnt number; total number := 0; tabs number := 0; begin for x in ( select owner || ‘.’ || table_name tab from dba_tables) loop execute immediate ‘select count(*) from ‘ [...]