Beste PHP Helpers,

Een flinke tijd geleden heb ik hier al eens wat vragen gesteld, nu ben ik terug :)

Ik heb een vraagje over relaties, want ik kom er niet helemaal uit!

Sinds kort ben ik overgestapt op InnoDB, wat blijkbaar beter is (voor websites die veel met relaties te maken hebben) dan MyIsam.

Ik doe blijkbaar iets fout want ik krijgt steeds foutcode 150 terug uit MySQL.

Even een voorbeeld van een DB:

Tabellen: User, Profile, Preference, Balance, Location1, Payment, Property, Location2, Images, Comments

tabel - User

- één op één relatie met tabel -> Profile
- één op één relatie met tabel -> Preference
- één op één relatie met tabel -> Balance

- één op meer relatie met tabel -> Property
- één op meer relatie met tabel -> Payment

tabel - Location1

- één op meer relatie met tabel -> Profile

tabel - Property

- één op één relatie met tabel -> Location2

- één op meer relatie met tabel -> Images
- één op meer relatie met tabel -> Comments


Ik heb het maar even zo gedaan want zo is het denk ik het meest duidelijk.

Wat volgens mij (na testen) bij mij fout gaat is dat User het niet leuk vind dat ik een 'één op één relatie' heb met de Profile, Preference en Balance. Maar daarnaast ook een 'één op meer relatie' heb met Property en Payment. Dit geldt hetzelfde voor Property en de relaties hiervan Location2, Images en Comments.
Ik denk zelf dat er daardoor een foutmelding van foutcode 150 wordt gegeven want als ik de relaties verwijder dan is de foutcode weg!

Dat is wat ik weet, alleen zit ik met het vraagstuk als ik het zo mag noemen; waarom mag dit niet en wat kan ik er aan doen om dit wel werkend te krijgen?

Ik hoop dat één van jullie mij uit de brand kan helpen!

Alvast bedankt!
Ik denk niet dat hier iemand is die mij verder kan helpen? Ik dacht misschien als ik het op het PHP+hulp forum voorleg dat er iemand is met gevorderde database ervaring!

Toch bedankt allemaal!

[size=xsmall]Toevoeging op 09/09/2010 22:48:11:[/size]



Ik dacht misschien als ik het duidelijker maak met een afbeelding dat jullie er misschien meer van begrijpen.

Als ik zo'n soort DB maakt met engine InnoDB gaat het fout...

[size=xsmall]Toevoeging op 10/09/2010 01:29:10:[/size]

Na uren zoeken en voorbeelden nakijken ben ik er toch eindelijk achter gekomen, alle Foreign Keys id's moeten UNIQUE en NOT NULL zijn !
Helaas kon niemand dat uit mijn voorbeelden opmaken!

Sorry hiervoor! Toch bedankt mensen!

Reageren