Forms 6i unter Windows 7 (32 oder 64 Bit)

Posted by Sven Thämar

Forms 6i unter Windows 7 (64 Bit) zu installieren ist möglich. Mann muss nur beachten, dass bei der Installation kein Registry-Baum “Oracle” aufgebaut wird. Diesen kann man aber aus einer bestehenden Installation importieren. Am besten man installiert Forms6i & Reports erst auf einem 32-Bit System (am besten auch Windows 7) und exportiert den Oracle-Baum aus [...]

MIN, MAX innerhalb eines SELECT-Statement

Posted by Sven Thämar

Manchmal benötigten man sowohl den kleinsten (min) als auch den größten (max) Wert einer indizierten Spalte gleichzeitig. SELECT MIN(id) , MAX(id) FROM big_table Bei diesem SELECT kommt zwar das richtige Ergebnis, dennoch kann die Antwortzeit sehr lange dauern. Der Grund liegt in einem FAST FULL INDEX SCAN. Besser ist folgendes: SELECT MIN(id) min_value FROM big_table [...]

Blockierende SQL-Session

Posted by Sven Thämar

Folgendes SQL-Statement kann man verwenden wenn man prüfen möchte ob es blockierende Sitzungen gibt. SELECT , b.username blocking_username , b.osuser blocking_osuser , b.machine blocking_machine , b.program blocking_program , w.sid waiting_sid , w.username waiting_username , w.osuser waiting_osuser , w.machine waiting_machine , w.seconds_in_wait FROM v$SESSION w , v$SESSION b WHERE w.blocking_session is not NULL AND b.sid = [...]

Sortierung von hierachischen Bäumen

Posted by Sven Thämar

Oft hat man die Anforderung hierachische Bäume sortiert darzustellen. Am besten soll die Sortierung auch jederzeit geändert werden können. Folgendes Beispiel soll die einfache Lösung aufzeigen: SELECT a.id , a.parent_id , a.label , a.sort FROM menu_tree a ORDER BY 2 nulls first,1   ID PARENT_ID LABEL SORT 1   Anwendung 1 2 1 Hilfsdaten 2 [...]

Before-Insert/Update Trigger (Performance)

Posted by Sven Thämar

Bei der Verwendung von Before-Insert / Update Triggern sollte man bezüglich performance immer prüfen ob eine Wertzuweisung erfolgen muss oder ob der Wert bereits vorhanden ist. Z.b. bei den Feldern create_on bzw. create_by ist eine Zuweisung nur Sinnvoll, wenn die Werte wirklich NULL sind. Ansonsten ist der Performanceverlust bei einer permanenten Zuweisung sehr hoch.