Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Package im SQL-Developer

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von wuschel_core, 29 Mai 2012.

  1. wuschel_core

    wuschel_core Neuer Benutzer

    Hallo erstmal !
    Also ich will bei meiner Procedur das Gesamtergebnis immer in eine Globale Variable zu speichern aber wie geht das ?

    Mein Ansatz :
    Code:
    create or replace
    PACKAGE gesamt AS
      gesamt NUMBER;
    END gesamt;
    Im Programm :
    gesamt.gesamt=gesamt.gesamt+neuen wert;
    // Genau das funktioniert nicht

    Kann mir jemand helfen ?

    Mfg
     
  2. PLSQL_SQL

    PLSQL_SQL Datenbank-Guru

    Hy,

    Globale Variablen existieren soweit ich weis nur in einem Package und nur innerhalb diesem.
    Du schreibst von einer Prozedur! Befindet sich diese im Package?

    Hier ein Beispiel:

    Code:
     
    create or replace PACKAGE gesamt
    AS
     
       v_gesamt NUMBER DEFAULT 0; --Globale Variable, da diese im gesamten Package verfügbar ist!!!
     
     
    --MyProc erhöht v_gesamt bei jedem Aufruf!
    PROCEDURE MyProc
    IS
     
    BEGIN
     
       v_gesamt := v_gesamt + 1;
     
    END MyProc;
     
     
    END gesamt;
     
    

    Hilft das weiter?

    Lg
     
  3. wuschel_core

    wuschel_core Neuer Benutzer

    Ne nicht wirklich da meine Procedur nicht in der Package ist !
    Meine Procedur ruft sich selbst iterativ immer wieder auf und jede Aufruf soll mit dem neuen Wert arbeiten können , deswegen brauch ich die globale variable



    Gibt es auser dem Package keine Möglichkeit ?
    Hab gehört manche erstellen eine eigene Table wo sie den Wert immer wieder updaten
    oder gehört hab ich auch etwas von einer Table dual die genau für diesen Zweck schon extisitiert , aber auf die kann ja nicht zugegriffen werden

    Glg
     
  4. ukulele

    ukulele Datenbank-Guru

    Was spricht denn gegen eine eigene Config Tabelle für eben diesen Zweck?
     
  5. PLSQL_SQL

    PLSQL_SQL Datenbank-Guru

    Ja dann würde ich dies über eine Tabelle lösen, eine andere Möglichkeit ist mir nicht bekannt.

    Außerdem haben Variablen immer nur zur Laufzeit den zugewiesenen Wert inne. Diese Tabelle "DUAL" ist für z.B: Du willst eine VIEW bauen, welche lediglich einen Return-Wert von einer Function beinhaltet oder hardcodierte Werte, dann kannst deu DUAL nehmen.

    Mach doch mal "Select * from Dual", dann kommt nur eine Spalte mit nur einem Datensatz mit dem Wert "X" heraus.

    Lg
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden