deraddy
Goto Top

MySQL mehrere Datenfelder auf einmal vergleichen

Hallo ...

in meiner mySQL Datenbank gibt es eine Tabelle mit folgenden Felder:

id(primarykey); vorname; name; geburtsdatum(text)

Wie kann ich eine Abfrage erstellen um zu prüfen, das ich eine Person (vorname; name ; geburtsdatum) nicht doppelt eintrage?
Jemand eine Idee??

DerAddy

Content-ID: 60977

Url: https://administrator.de/contentid/60977

Ausgedruckt am: 22.11.2024 um 08:11 Uhr

Guenni
Guenni 10.06.2007 um 15:54:53 Uhr
Goto Top
@DerAddy

Hi,

du mußt nur die Tabelle entsprechend definieren,
indem du Vorname, Nachname, Geburtsdatum
gemeinsam in den Primärschlüssel aufnimmst:

CREATE TABLE `tabelle2` (
`id` INT NOT NULL AUTO_INCREMENT ,
`Vorname` VARCHAR( 24 ) NOT NULL ,
`Nachname` VARCHAR( 24 ) NOT NULL ,
`Geburtsdatum` VARCHAR( 10 ) NOT NULL ,
PRIMARY KEY ( `Vorname` , `Nachname` , `Geburtsdatum` ) ,
INDEX ( `id` ) 
) ;

Gruß
Günni
DerAddy
DerAddy 10.06.2007 um 18:40:45 Uhr
Goto Top
Oder so ... Ich hab es anders gelöst ...

SELECT id FROM table WHERE vorname = $var1 AND name = $var2 AND geburtsdatum = $date .

Danke für den guten Vorschlag
Desperado
Desperado 11.06.2007 um 07:29:39 Uhr
Goto Top
der gute dublettenabgleich face-smile

Du kannst am simpelsten einfach aus den 3 Feldern 1 String machen und diesen vergleichen:

SELECT vorname + name + geburtsdatum As Kontaktstring FROM Tabelle

Grüsse, Desperado