AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Ändern von Datensätzen in Master-Detail-Verkn. nicht möglich
Thema durchsuchen
Ansicht
Themen-Optionen

Ändern von Datensätzen in Master-Detail-Verkn. nicht möglich

Ein Thema von BlueStarHH · begonnen am 3. Nov 2006 · letzter Beitrag vom 3. Nov 2006
Antwort Antwort
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#1

Ändern von Datensätzen in Master-Detail-Verkn. nicht möglich

  Alt 3. Nov 2006, 21:24
Datenbank: Firebird • Version: 1.5 • Zugriff über: TIBTable, TIBDatabase, IBX
Hallo,

ich habe zwei Firebird-Tabellen. Eine ist die Haupttabelle und die andere die Detailtabelle die über das Feld NR verknüpft sind. Anlegen und Löschen von Datensätzen klappt. In folgender Situation kommt es zu einem Fehler:

1. Ein Datensatz in der Master-Tabelle wird ausgewählt. In der Detailtabelle existieren zu diesem Datensatz Detaildatensäte.
2. Im Datensatz der Master-Tabelle wird das Feld NR verändert.
3. Bei einem Post erscheint folgende Fehlermeldung: violation of FOREIGN KEY constraint "FK_DETAIL-TABELLE" on table "DETAIL-TABELLE"

Im Anhang befindet sich ein kleines Demo-Projekt mit dem dies nachvollzogen werden kann. Das Projekt enthält nur 5 Zeilen code und die Einstellungen die visuell vorgenommen wurden. Sollte mit jeder Delphi-Version geöffnet werden können. Die Embedded-Version von Firebird ist im ZIP enthalten. Zum Testen muss man also nichts groß einstellen oder installieren.

Wer kann helfen? Vielen Dank im Voraus!
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: Ändern von Datensätzen in Master-Detail-Verkn. nicht mög

  Alt 3. Nov 2006, 21:53
Du hast einen Foreign Key in Tabelle Hist, sonst nirgends. Es ist keine ID zu sehen usw. Kein Trigger. Kein Generator. 8) Kein Verweis auf den foreign key. Wie soll das gehen ?
Gruß
Hansa
  Mit Zitat antworten Zitat
BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Ändern von Datensätzen in Master-Detail-Verkn. nicht mög

  Alt 3. Nov 2006, 22:17
Danke, Hansa! Ich hab tagelang gesucht, aber Du hast mich auf den richtgen Weg gebracht. Beim Erstellen der Tabelle fehlt nur "ON UPDATE CASCADE". Also:

ALTER TABLE DetailTable ADD CONSTRAINT FK_DetailTable FOREIGN KEY (NR) REFERENCES MasterTable (NR) ON DELETE CASCADE ON UPDATE CASCADE;
  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 02:00 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