WinFuture-Forum.de: Pl/sql Umgebungsvariablen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Pl/sql Umgebungsvariablen Verwenundung von Umgebungsvariablen


#1 Mitglied ist offline   oehi86 

  • Gruppe: aktive Mitglieder
  • Beiträge: 55
  • Beigetreten: 27. März 07
  • Reputation: 0
  • Wohnort:Duderstadt

geschrieben 03. Mai 2007 - 12:01

Hey Ho,
Ich benutze Oracle 9i.
Kann man in SQL auch Umgebungsvariablen nutzen?
Ich möchte dieses hier als pl/sql haben.

set db=germany
set uname=scott
set pw=tiger

sqlplus %uname%/%pw%@%db% @script.sql <-- was hier gemacht wird ist egal, mir gehts einzig und allein um die Verwendung und Deklaration von variablen...

Thx im vorraus

Dieser Beitrag wurde von oehi86 bearbeitet: 03. Mai 2007 - 12:52

0

Anzeige



#2 Mitglied ist offline   oehi86 

  • Gruppe: aktive Mitglieder
  • Beiträge: 55
  • Beigetreten: 27. März 07
  • Reputation: 0
  • Wohnort:Duderstadt

geschrieben 15. Mai 2007 - 12:24

Hat hier keiner auch nur eine Idee?
Schade, habe ich mir ja ein wenig mehr versprochen...
trotzdem danke
0

#3 Mitglied ist offline   Cobinja 

  • Gruppe: Mitglieder
  • Beiträge: 8
  • Beigetreten: 29. September 06
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 18. Mai 2007 - 21:10

Wenn du damit meinst, ob du in einem Script eigene variablen definieren und verwenden kannst, dann lautet die Antwort "Ja, kannst du."

Zum Beispiel so:

DECLARE
  text01 varchar2(80);
BEGIN
  SELECT inhalt
	INTO text01
	FROM bla
   WHERE id = 1;
END;

Dieser Beitrag wurde von Cobinja bearbeitet: 18. Mai 2007 - 21:11

0

#4 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 19. Mai 2007 - 11:11

Das, was du vor hast ist ein ganz einfaches Batchscript und sollte so auch möglich sein.
0

#5 Mitglied ist offline   Al_Bore 

  • Gruppe: Mitglieder
  • Beiträge: 1
  • Beigetreten: 07. Juni 07
  • Reputation: 0

geschrieben 07. Juni 2007 - 12:19

Hallo oehi86,

falls das noch hilft: Ich hatte bis eben dasselbe PL/SQL-Problem und bin woanders fündig geworden. Die Verwendung von Umgebungsvariablen hängt wohl vom Client ab. Für SQL*Plus mußt Du tatsächlich nur die Umgebungsvariablen nacheinander an deinen Skriptaufruf hängen. Hier ein Beispiel für die Unix-Shell bash, unter Windows sollte das ja mit set ähnlich funktionieren, hab ich vergessen:

export MYSTRING="'Das ist ein String'"
export MYNUM=12345
sqlplus schema/passwd@instanz @vartest.sql $MYSTRING $MYNUM




In der SQL-Datei selber greifst Du mit &1 bis &n auf die Parameter zu. Beim String ist es wichtig, dass er schon bei der Übergabe an sqlplus in Hochkommata eingeschlossen ist, sonst fällt Oracle beim Zugrif auf &1 auf die Schnauze.

set echo on
select '&1' as mystring, &2 as mynumber from dual;
set echo off
exit



Die Ausgabe sieht dann so aus:

SQL> select '&1' as mystring, &2 as mynumber from dual;
old   1: select '&1' as mystring, &2 as mynumber from dual
new   1: select 'Das ist ein String' as mystring, 12345 as mynumber from dual

MYSTRING           MYNUMBER
------------------ ----------
Das ist ein String      12345


Dieser Beitrag wurde von Al_Bore bearbeitet: 07. Juni 2007 - 12:26

0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0