Einzelnen Beitrag anzeigen

borwin

Registriert seit: 14. Sep 2006
Ort: Rostock
72 Beiträge
 
Delphi 2007 Enterprise
 
#14

AW: Datenbank Duplicates

  Alt 23. Jun 2010, 06:43
Bei der Abfrage wird der Inhalt des Feldes genau überprüft. Dabei erflogt die Überprüfung Zeichenweise und ein 'A' ist dann etwas anderes als ein 'a'. Um das zu umgehen werden alle Zeichen auf UPPER gesetzt. Eine weitere Falle beim abfragen von Texten sind die Leerzeichen. Für die Datenbank ist 'MEIER' und 'MEIER ' nicht gleich. Um auch diesen Fall zu umgehen noch ein TRIM um die Felder legen.
Dann sieht das ganze dann so aus
Code:
SELECT TRIM(UPPER(ip_name))
FROM musik
GROUP BY TRIM(UPPER(ip_name))
HAVING COUNT(*)>1
Um das Einfügen von doppelten Datensätzen zu verhindern musst Du Deinen Index verändern.
Lege ein sogenantes COMPUTER BY Feld an mit Index an

Zitat:
create index idx_name on musik computed by (trim(upper(ip_name)));
Das verhinder schon doppelte Datensätze. Geht ab FB 2.0

Gruß Borwin
  Mit Zitat antworten Zitat