AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firebird und AutoInc
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird und AutoInc

Ein Thema von Grolle · begonnen am 30. Sep 2010 · letzter Beitrag vom 3. Okt 2010
Antwort Antwort
Seite 2 von 3     12 3      
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#11

AW: Firebird und AutoInc

  Alt 1. Okt 2010, 14:50
Hallo,

bisher verwende ich keine statische Feldliste.

ich brauche die ID, wenn der Datensatzzeiger sich im Dataset(Query/Datasource) bewegt.
gibt's denn da kein Event, an welchem ich die ID abgreifen kann?

Viele Grüße ...

  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#12

AW: Firebird und AutoInc

  Alt 1. Okt 2010, 16:30
AfterScroll
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.859 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: Firebird und AutoInc

  Alt 1. Okt 2010, 19:35
Hallo Grolle,

Vielleicht hilft Dir dieser Link weiter: http://www.firebirdsql.org/pdfmanual...eneratoren.pdf

Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#14

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 15:24
Hi,

also, dass Problem liegt nicht an dem DBEdit sondern taucht beim speichern eines neuen Datensatzes auf.
Delphi-Quellcode:
    Query.Post;
    Query.Refresh;
Beim Post kommt der Fehler, dass das Feld ID einen Wert haben muss (dieses ist aber gar nicht in der Insert Query). Leider ist das bei den anderen
getesteten Datenbanken (MySQL, SQLite) nicht so.

Weiß jemand rat?

Viele Grüße ...

  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 15:44
Wie sieht denn der Trigger aus?
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
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#16

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 15:49
Hi,
SQL-Code:
/* Trigger: CONTACTS_BI */
CREATE TRIGGER CONTACTS_BI FOR CONTACTS
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.id is null) then
    new.id = gen_id(gen_contacts_id,1);
end
^
wurde von IBExpert generiert. Kann man nicht probieren das ganze als "After insert" zu nutzen?

Viele Grüße ...


Geändert von mkinzler ( 2. Okt 2010 um 22:32 Uhr) Grund: Code-Tag durch SQL-Tag ersetzt
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 15:54
Da ich annehme, dass es sich um den PK handelt, wird das im AfterInsert wohl nicht gehen, da der Datensatz mit einem NULL-Wert in einem NOT NULL-Feld nicht angelegt wird. Übrigens würde ich die if-Abfrage innerhalb des Triggers löschen, da IMO ein Setzen des Wertes niemals von außen zu geschehen hat.
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
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#18

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 16:00
Hi,

habe es geändert. Sollte ich das Feld besser nicht als PK markieren und Null? (Hatte ich so auch schon getestet und läuft, aber ist nicht gerade optimal?!)

Viele Grüße ...

  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 16:20
Nein nein, der PK macht ja Sinn. Normalerweise sollte doch bei einem INSERT PK dieser dann automatisch befüllt werden.
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
Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#20

AW: Firebird und AutoInc

  Alt 2. Okt 2010, 16:33
Aber woher kommt dann der Fehler?

  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 08:23 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