MySQL: Datensätze miteinander verknüpfen

Original geschrieben von fluessig
Wenn die Abfrage mit einem SELECT DISTINCT eingeleitet wird, ist es egal ob die Daten doppelt vorkommen.
:-) Gute Idee... und keiner wundert sich, warum die Datenbank immer größer wird, und trotzdem nicht mehr Informationen hergibt... :-)
 
2 Primärschlüssel?

Hallo

Ich bin an einem ähnlichem Problem. Doch wie kann ich in der Relationstabelle den Primärschlüssel auf beide Spalten setzen? Wenn ich es definiere (create table..) kommt der Fehler "Multiple Primary Key".

Wie kann ich das machen?
 
Du must doch in deinem CREATE-Statement nach deiner Spaltendefinition nur
PHP:
PRIMARY KEY (Spalte1,Spalte2)
schreiben - dann sollte es klappen - oder? ;-]
 
Entschuldige die vielleich blöde Frage, aber wie muss ich dann die Spalten definieren, dass dies funktioniert? Bei mir werden nach dem Erweitern des CREATE-Statements durch den Befehl Fehler ausgegeben. Auch mit dem ADD PRIMARY KEY oder MODIFY Befehl funktioniert es nicht. Was könnte ich falsch machen?
 
So sollte es eigentlich funktionieren:
PHP:
CREATE TABLE Tabelenname
(
Spalte1 Datentyp Zusatz,
Spalte2 Datentyp Zusatz,
Spalte3 Datentyp Zusatz,
PRIMARY KEY (Spalte1, Spalte2)
)
IN Dataspacename[.Tablespacename]
eckige Klammern = optional

Soweit ich weiß, gibt es keine Einschränkung, dass Spalten bestimmte Datentypen/Zusätze (nicht) aufweisen müssen, um als PK gültig zu sein.

Wenn du den PK nachträglich verändern willst, solltest du natürlich darauf achten, dass du nicht einen zweiten PK hinzufügen willst.
Sonst sagt die DB verständlicherweise:
Es kann nur einen ersten geben... :-)
 
Zurück