![]() |
doppelte Einträge vermeiden [SQL]
Hi,
wie kann ich es vermeiden, daß bei einem INSERT auf einen bereits bestehenden Datensatz dieser nicht neu eingefügt wird ? Es handelt sich um eine Detail-Tabelle, die einen FOREIGN KEY der Mastertabelle hat. Ist der Datensatz noch nicht vorhanden, so soll er eingefügt werden, ansonsten soll ein Update laufen. |
Re: doppelte Einträge vermeiden [SQL]
Du könntest ja sehr leicht mit einem Select prüfen ob es breits eine Detailtabelle gibt, vorrausgesetzt du kennst die Primary-ID der Haupttabelle.
Ist die Abfrage leer, musste du Insert machen und sonst ein Update. |
Re: doppelte Einträge vermeiden [SQL]
Hi!
Es gibt doch ne Anweisung für Update, also nicht INSERT sondern eben UPDATE! Ob der anlegt falls nicht vorhanden, weiß ich grad nicht, aber das kann man ja prüfen! Hoffe das hilft! Ciao fkerber |
Re: doppelte Einträge vermeiden [SQL]
Zitat:
|
Re: doppelte Einträge vermeiden [SQL]
Zitat:
Beispiel: Es wird eine Spalte eines Datensatzes geändert. Die Tabelle hat einen AutoInc-Wert als PK, einen sekundären eindeutigen Key aus drei Spalten und 6 not null Felder. Der Datensatz wird entweder nach dem PK oder dem Sekundär-Key gesucht und nicht gefunden. Was soll nun mit den Werten für die 6 not Null Feldern passieren? :? Ich kann mich hier dem Vorschlag von Touchdown nur anschließen: Mit einem Select überprüfen, ob der Datensatz bereits vorhanden ist, wenn ja dann UPDATE, wenn nein dann INSERT. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz