Thema: Delphi unique?

Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 

Re: unique?

  Alt 21. Sep 2005, 06:38
Hi Andy,

Zitat von Sanguis:
Danach konnte ich den Index ohne Probleme anlegen und er wurde auch gespeichert ohne das ich eine Fehlermeldung bekommen habe. NUR: Es bringt nichts.
Ich kann weiterhin in der Datenbankoberfläche 2 gleiche Datensätze in dem Feld eingeben ohne das gemeckert wird. Wird alles gespeichert.
Das deutet für mich darauf hin, dass du den Index für eine nicht leere Tabelle erzeugst bzw. änderst und für diesen Index das UNIQUE Kriterium von deinen Daten her nicht erfüllt ist. In der Datenbankoberfläche kannst du das daran erkennen, dass der Haken bei "eindeutig" fehlt, nachdem du ihn vermeintlich korrekt gespeichert hast. Nach dem Speichern der Einstellungen einfach nochmal öffnen und nachsehen. Um einen UNIQUE Index für Tabellen zu erstellen, deren Daten das Kriterium nicht erfüllen musst du anders vorgehen. Erstelle eine Kopie der Originaltabelle, leere die Originaltabelle, ändere dann den Index und kopiere die Daten dann zurück. Doppelte Schlüssel werden dann abgewiesen.

Unabhängig von den immer wieder zu lesenden Schmähungen für die BDE möchte ich dir versichern, dass diese Software funktioniert, wenn man mit ihr umzugehen weiß. Ich habe 10 Jahre lang eine Leasing-Anwendung in OPAL betrieben und einige noch ältere BDE-basierte Anwendungen sind noch heute im Einsatz. In allen Fällen wehren sich bzw. haben sich die Benutzer gegen eine Ablösung gewehrt. Die Leasing-Anwendung wurde vor 2 Jahren wegen SAP abgeschaltet. Probleme gibt es etwa alle 2 Jahre mal, weil bei einem Kunden eine Tabellenreparatur fällig ist - mal wegen Stromausfall, mal weil Spannungsspitzen von einer Straßenbahn durchschlagen.

@Hansa: was hältst du von dem Kfz-Sachverständigen, der dir nach Begutachtung eines Lackschadens an deinem Oldtimer den Kauf eines neuen Fahrzeugs empfiehlt, mit der Begründung, dass dein Fahrzeug veraltet sei?

Grüße vom marabu
  Mit Zitat antworten Zitat