AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken [erledigt] Wie verwendet man VEXTVAL und CURRVAL richtig

[erledigt] Wie verwendet man VEXTVAL und CURRVAL richtig

Ein Thema von p80286 · begonnen am 26. Jun 2012 · letzter Beitrag vom 26. Jun 2012
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

[erledigt] Wie verwendet man VEXTVAL und CURRVAL richtig

  Alt 26. Jun 2012, 15:47
Datenbank: Oracle • Version: 10 • Zugriff über: egal
Hallo zusammen,
folgende Abfrage wir von Oracle nicht akzeptiert:
Code:
select '-- HUSC'
     ,'insert into globalmask (globalmaskkey,countrykey,ipsitekey,usetype,casetypekey,propertytypekey)'
     ,'values('||nextkey.nextval||','||countrykey||',20230628,4,1,1);'
,chr(13)||chr(10)
     ,'insert defaultcasenamenamekey (GLOBALMASKKEY,NAMETYPEKEY,NAMEKEY,DEFAULTKEY)'
     ,' values ('||nextkey.currval||',102,10414425);'
,chr(13)||chr(10)||'-- HUHR'
  ,'insert into globalmask (globalmaskkey,countrykey,ipsitekey,usetype,casetypekey,propertytypekey)'
  ,'values('||nextkey.nextval||','||countrykey||',37934789,4,1,1);'
,chr(13)||chr(10)
  ,'insert defaultcasenamenamekey (GLOBALMASKKEY,NAMETYPEKEY,NAMEKEY,DEFAULTKEY)'
  ,' values ('||nextkey.currval||',102,35745741);'
,chr(13)||chr(10)||'-- HUBW'
  ,'insert into globalmask (globalmaskkey,countrykey,ipsitekey,usetype,casetypekey,propertytypekey)'
  ,'values('||nextkey.nextval||','||countrykey||',37934829,4,1,1);'
,chr(13)||chr(10)
  ,'insert defaultcasenamenamekey (GLOBALMASKKEY,NAMETYPEKEY,NAMEKEY,DEFAULTKEY)'
  ,' values ('||nextkey.currval||',102,38076588);' ---<< Fehler
from tablecountry
where countrycode<>'WO'
order by countrykey
Die Fehlermeldung lautet: ORA-02287: sequence number not allowed here.
(Das Currval ggf nicht den Wert liefert den ich erwarte ist mir klar.Mir geht's nur um die Fehlermeldung)

Wißt ihr woran Oracle sich verschluckt?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (26. Jun 2012 um 16:15 Uhr)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.733 Beiträge
 
Delphi 6 Enterprise
 
#2

AW: Wie verwendet man VEXTVAL und CURRVAL richtig

  Alt 26. Jun 2012, 16:03
Leider keine Ahnung. Vllt. ist der Sequenzer empfindlich? Oder kann in einem Select nur einmal angesprochen werden?
Kann man die entsprechenden Stellen vllt. ersetzen durch einen Subselect ala:

(Select nextkey.nextval from Dual)
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Wie verwendet man VEXTVAL und CURRVAL richtig

  Alt 26. Jun 2012, 16:09
Lt. Oracle Beschreibung tritt der Fehler in Subselects, Where.., Order.. usw. auf, aber eben nicht im Select. Das mit dem Mehrfachaufruf könnte sein wäre aber nicht so positiv.
(und vor allem nicht dokumentiert, bzw. ich hätte es übersehen)

Gruß
K-H

Ohh
ich hatte das Order By Übersehen *schäm*
hat sich erledigt

Nachtrag:
Es sieht so aus als ob NEXTVAL pro SELECT nur einen Wert liefert. Das CURRVAL wäre also Überflüssig.
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (26. Jun 2012 um 16:42 Uhr) Grund: nachtrag
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:21 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