AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi [oracle] fehler bei "auto-increment" mit trigger & seque

[oracle] fehler bei "auto-increment" mit trigger & seque

Ein Thema von s.h.a.r.k · begonnen am 22. Aug 2008 · letzter Beitrag vom 22. Aug 2008
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#11

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 13:12
Was spricht denn gegen
SQL-Code:
SELECT vid, id
FROM elz_laufzettel
WHERE vid IN(1457,1458,1459)
ORDER BY vid,id
Oder habe ich das Kernproblem mal wieder nicht verstanden?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#12

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 13:56
Zitat von DeddyH:
Was spricht denn gegen
SQL-Code:
SELECT vid, id
FROM elz_laufzettel
WHERE vid IN(1457,1458,1459)
ORDER BY vid,id
Oder habe ich das Kernproblem mal wieder nicht verstanden?
das bringt mir nichts, das hat nichts mir meinem problem zu tun. das problem ist, dass die ids ebe nicht richtig vom trigger eingetragen werden, um es mal auf den punkt zur bringen.

@ULIK: jup, ich habe einen passenden zeitstempel, der aber eben aus delphi kommt. kann sie ja mal raussuchen, wobei jetzt dann gleich feierabend ist. ich lade die daten später hoch, wenn ichz zu hause bin!
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 14:00
Mich verwirrt das FOR EACH ROW etwas und die Tatscahe das VID nicht einmalig ist
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#14

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 14:21
Scheint eine 1:n-Beziehung zu sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 14:25
Es wird allerdings ein Insert-Trigger verwendet, der nicht auf Null prüft, also für jeden DS gelten sollte
Markus Kinzler
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#16

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 14:41
Zitat von mkinzler:
Mich verwirrt das FOR EACH ROW etwas und die Tatscahe das VID nicht einmalig ist
Ohne das würde der Trigger nur auf Statementebene laufen. Also nur einmal für ein Update oder Insert, selbst wenn diese 100 Records ändern würden.
Zitat von mkinzler:
Es wird allerdings ein Insert-Trigger verwendet, der nicht auf Null prüft, also für jeden DS gelten sollte
Ist in Oracle normal. Ora hat seit Ewigkeiten eine "Returning" clause, manuelles Sequence-Gefriemel ist also seit jeher unnötig.


@Shark, was ergibt diese Abfrage? Hast du mehr als einen Trigger?
SQL-Code:
SELECT Owner
      ,Trigger_Name
FROM All_Triggers
WHERE Table_Owner = User
and Table_Name = 'TABLETEST'
Hiermit könntest du alle anderen Trigger löschen:
SQL-Code:
begin
  for this in (SELECT Owner
                     ,Trigger_Name
               FROM All_Triggers
               WHERE Table_Owner = User
               and Table_Name = 'TABLETEST'
               and not (Owner = Table_Owner
                           and Trigger_Name = 'TRIGTEST')) loop
    execute immediate 'drop trigger "' || this.Owner || '"."' || this.Trigger_Name || '"';
  end loop;
end;
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 14:45
Zitat:
Ist in Oracle normal. Ora hat seit Ewigkeiten eine "Returning" clause, manuelles Sequence-Gefriemel ist also seit jeher unnötig.
Ich meinte auch eher eine Überprüfung im Trigger ob ein Wert vom Client übergeben wurde. Da das nicht der Fall ist, würde duieser Wert ja ignoriert und ein neuer Wert per Sequenz erzeugt und eingetragen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#18

Re: [oracle] fehler bei "auto-increment" mit trigg

  Alt 22. Aug 2008, 16:42
Zitat von DeddyH:
Scheint eine 1:n-Beziehung zu sein.
es ist eine 1:n beziehung, hab gedacht das sei aus dem ersten post von mir und dem folgenden klar geworden!?

@Elvis: kann das jetzt leider nicht mehr ausprobieren, da ich daheim bin, aber es ist so, dass ich nur einen trigger anlege und es gibt sonst, für tbl2, keinen anderen trigger. woher sollte denn ein anderer plötzlich kommen?

Zitat:
@Shark, was ergibt diese Abfrage? Hast du mehr als einen Trigger?
dazu bekommst am montag eine antwort.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  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 09:20 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