ManicMarble
Erfahrenes Mitglied
(Das ist ja mal wieder ein Betreff....
)
Hallo zusammen,
gleich ohne Umschweife zur Frage, welche ich am besten an einem Beispiel erkläre:
Eine Tabelle hat u.a. 2 Felder, 'firma1' und 'firma2', in beiden steht jeweils die ID zu einem Datensatz in der Firmen-Tabelle. Es soll verhindert werden, dass es ein "Firmen-Pärchen" doppelt gibt. Also ganz klar: Unique-Index über die beiden Felder.
Jetzt gibt's bspw. einen Datensatz mit 'X' bei firma1 und 'Y' bei firma2. Einen zweiten Satz mit X und Y kanns nicht geben. Es soll aber auch keiner mit Y und X angelegt werden dürfen (also umgekehrt). Der Unique-Key lässt das natürlich zu - damit gäbe es das Pärchen eben doch doppelt.
Gibt es mit MySQL eine reine SQL-Lösung für dieses Problem? Ausprogrammieren (z.B. in PHP) lässt sich das natürlich relativ einfach, aber eine reine DB-Lösung?
Kennt jemand einen Trick?
Grüße,
Martin

Hallo zusammen,
gleich ohne Umschweife zur Frage, welche ich am besten an einem Beispiel erkläre:
Eine Tabelle hat u.a. 2 Felder, 'firma1' und 'firma2', in beiden steht jeweils die ID zu einem Datensatz in der Firmen-Tabelle. Es soll verhindert werden, dass es ein "Firmen-Pärchen" doppelt gibt. Also ganz klar: Unique-Index über die beiden Felder.
Jetzt gibt's bspw. einen Datensatz mit 'X' bei firma1 und 'Y' bei firma2. Einen zweiten Satz mit X und Y kanns nicht geben. Es soll aber auch keiner mit Y und X angelegt werden dürfen (also umgekehrt). Der Unique-Key lässt das natürlich zu - damit gäbe es das Pärchen eben doch doppelt.
Gibt es mit MySQL eine reine SQL-Lösung für dieses Problem? Ausprogrammieren (z.B. in PHP) lässt sich das natürlich relativ einfach, aber eine reine DB-Lösung?
Kennt jemand einen Trick?
Grüße,
Martin