[ORACLE] Strukturierungsmittel?

Thomas Darimont

Erfahrenes Mitglied
Hallo!

Weis jemand, ob es möglich ist innerhalb einer Oracle Datenbank noch eine Hierarchie unterhalb eines Schemas aufzubauen? Vielleicht analog zum package/namespace-Konzept unter Java/C# ?

Gruß Thomas
 
Also die einzige Mögllichkeit die mir spontan einfällt sind Packages. Unter denen lassen sich aber leider nur Typen, Prozeduren und Functions definieren. Also keine Tabellen oer Views.

Das beste Beispiel für Packages sind die DBMS_* Packages von Oracle selbst.

Für was brauchste das denn ? Wird das Schema zu unübersichtlich ?
 
Hallo!

Das mit den packages und deren Einschränkungen war mir auch schon bekannt.
Ja ich habe hier schemata mit extrem vielen Tabellen die man gerne noch weiter hierarchisieren wollte.

Gruß Tom
 
Nun, was mir nicht ganz klar ist: Normalerweise sind Hierarchien nur notwendig, wenn ich z.B. unterschiedliche Rechtestrukturen abbilden möchte. Für alles andere muss eine durchdachte Namenskonvention der Objekte ausreichen.

Ich meine, wenn mein Schema zu unübersichtlich wird, dann doch nur, weil es nicht ausreichend dokumentiert ist, oder keine Standards innerhalb des Schemas eingehalten werden.

Was ich damit meine, bei "uns" heissen z.B. alle Tabellen TXXX_NAME.
XXX ist eine fortlaufende Nummer, wobei 0XX in der Regel Stammdaten sind und dann die einzelnen Datentabellen immer T1XX, T2XX je nach "Kategorie" heissen. Die Spalten der Tabellen sind dann mit CXXX_Feldbezeichnung deklariert... und so hat alles seinen definierten Namen und jeder weiss sofort welche Tabelle wozu gehört...
 
Hallo!

Bei "uns" gibt es ein ähnliches (historisch gewachsenes Bennenungsschema) jedoch stößt das recht schnell an die 30 Zeichengrenze für Tabellennamen unter Oracle. D.h. die 30 Zeichen reichen nicht mehr aus (ich spreche von einem seeeeehr großen Datenmodell) um die Tabellen noch sinnvoll in "Bereiche" zu gliedern und gleichzeitig noch "sprechende" Namen zu haben.

Gruß Tom
 
Hallo!

Unter Oracle gibt es ja die sogenannten SYNONYME die man für "alle" erdenklichen Schema Objekte vergeben kann. Weis jemand zufällig, wie lang der Name eines Synonyms sein darf und ob man diesen Namen dann ganz normal in seinen (Select) Statements verwenden kann und (wenn's überhaupt geht) wie sehr die Verwendung von Synonymen die Performance drückt.

//EDIT
Shit:
Code:
SQL> desc user_synonyms;
 Name                                      Null?    Type
 ----------------------------------------- -------- -----------------------
 SYNONYM_NAME                              NOT NULL VARCHAR2(30)
 TABLE_OWNER                                        VARCHAR2(30)
 TABLE_NAME                                NOT NULL VARCHAR2(30)
 DB_LINK                                            VARCHAR2(128)

Gruß Tom
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück