Announcement

Collapse
No announcement yet.

Substitution Variable für Schme verwenden?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Substitution Variable für Schme verwenden?

    Hallo,


    ich arbeite mit Quest SQL Navigator auf einer Oracle 10g Datenbank.

    Ist es möglich, die Substitutionsfunktion für Schemanamen zu verwenden?


    Ich stelle es mir so ähnlich vor:

    Code:
    DEFINE MEINSCHEMA = 'meinschema1';
    
    SELECT * FROM
    &&MEINSCHEMA.tabelle1;

    Leider klappt es so nicht.
    Habt ihr eine Idee?

    Vielen Dank
    Philipp

  • #2
    prinzipiell sollte das gehen, hier schnell ein Ansatz, der die Anzahl Deiner Tabellen ausgibt (muss los)...
    Code:
    DEFINE MEINSCHEMA = 'user_tables';
    
    SELECT count(*) from &&MEINSCHEMA;

    Comment


    • #3
      Nix Variablen.
      Dafür gibts einen Befehl:
      Code:
      ALTER SESSION SET CURRENT_SCHEMA=XYZ;
      Leider klappt es so nicht.
      Das sind mir schon immer die liebsten Fehlerbeschreibungen gewesen...

      Dim
      Zitat Tom Kyte:
      I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

      Comment


      • #4
        Natürlich ist die Variante von @dimitri bequemer, man spart die Qualifizierung der Schemaobjekte mit <owner>.<objekt>.

        Konkret zu Deiner Frage, es geht prinzipiell auch mit Variablen:
        Code:
        DEFINE MEINSCHEMA = 'owner.';
        
        DEFINE MEINETABELLE = 'mytab';
        
        SELECT count(*) from &&MEINSCHEMA.mytab;
        
        SELECT count(*) from &&MEINSCHEMA.&&MEINETABELLE;
        Läuft in beiden Varianten, achte auf den Punkt hinter dem Schemaowner.

        Comment


        • #5
          vielen Dank! Nun hat es geklappt. Es lag an dem "." (Punkt).


          Gruß
          Philipp

          Comment

          Working...
          X