AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

For in & LOOP verschateln

Ein Thema von HolgerCW · begonnen am 13. Nov 2008 · letzter Beitrag vom 13. Nov 2008
Antwort Antwort
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#1

For in & LOOP verschateln

  Alt 13. Nov 2008, 10:53
Datenbank: ORACLE • Version: 10 • Zugriff über: BDE
Hallo zusammen, (ACHTUNG: PL/SQL)

ich möchte zwei for in Schliefen verschachteln. Wenn ich nur eine Schleife nutze funktioniert es, wenn ich aber eine weitere Schleife hinzufüge kann ich die Procedure zwar kompilieren aber es funktioniert ncihts mehr. Hier mal ein Teil meines Codes:

Code:
for e in (
      select bk.* from tabelle bk
      where bk.Spalte_1 IS NOT NULL
      order by bk.Spalte_2)

      loop

              for t in (
              select tg.* from tabelle2 tg
              where tg.Spalte_1 = e.Spalte_1
              order by tg.Spalte_2)

           loop

                 ...
 
                 end loop;
commit;
       
            end loop;
Was fehlt da. Kommt der eventuell nciht mehr aus der zweiten Schleife raus ?

Gruss

Holger

[edit=Phoenix]Delphi- nach Code-Tags geändert. Das scheint mir PL/SQL zu sein. Mfg, Phoenix[/edit]
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#2

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 12:51
Hallo,

es liegt nicht an den verschalchtelten LOOPs sondern daran das ich im zweiten LOOP folgendes tue:

Delphi-Quellcode:
insert into Tabellex (
         ID1, ID2, ID3, RANG)
          values('1', '1000099999', '22', '2');
Wenn ich das auskommentiere, dann läuft er auch die innere Schleife durch. Woran kann das liegen, das wenn ich ein INSERT in der Schleife mache er raus springt. Er setzt einen Tupel ab aber keinen zweiten mehr ...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 12:57
Sind die Werte variable oder wird immer der gleiche Inhalt eingetragen?
Markus Kinzler
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#4

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 12:59
Die sind variable. Ich verstehe nur nicht warum er das INSERT nur einmal absetzt. Ein Update setzt er mehrmals ab.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 13:03
Wie sieht der PK aus? Sind die Ds in dieser Beziehung wirklich einmalig?
Markus Kinzler
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#6

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 13:06
Hallo,

hast Du in der Routine eine Fehlerbehandlung?
Wenn nein, bau Dir eine ein und lass' Dir die Fehler ausgeben (http://www.datenbank-plsql.de/fehlerbehandlung.htm).
Wie sehen die Schlüssel von Tabellex aus, hast Du da eventuell ein Problem?
Was passiert, wenn Du hinter jedem Insert (zum Test) ein Commit einbaust?
Protokolliere die per Insert einzufügenden Werte mit dbms.output, um zu sehen, dass wirklich das in die Tabelle eingefügt wird, was Du erwartest.
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#7

Re: For in & LOOP verschateln

  Alt 13. Nov 2008, 13:16
Das war der Hinweis. Die erste ID war einmalig. Ich dachte aber die ganze zeit das Sie das nicht wär.

Vielen dank. Läuft jetzt ...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz