yo,
Aufgrund der falschen Storage Engine ist die Tabelle keys in deinem jetzigen Modell absolut funktionslos, und damit sinnlos. Abgesehen davon würde man sie vermutlich auch sonst nicht so realisieren.
das ist zu pauschal und kann ohne die genauen hintergründe zu kennen nicht getroffen werden. tabellen nur mit einem PK schlüssel können je nach bedarf schon auch sinn machen und zwar nicht nur wegen der referentiellen integrität. das hängt aber wie gesagt von seiner fachlichkeit ab.
Im übrigen sieht es so aus, als handele es sich hier um hexadezimale Zahlen. Die würde ich sowieso nie als String abspeichern, sondern immer als passenden INTEGER-Wert - je nach Wertebereich ggf. auch BIGINT, unsigned und ggf. mit passendem ZEROFILL.
die diskusion um den datentyp hatten wir hier im forum schon mal vor einiger zeit. ob ich INTEGER oder VARCHAR nehme hängt weniger von den inhalten ab, sondern primär von den prozessen, sprich will ich mit den daten rechnen, sortieren oder sonstiges tun, wo ich zahlen benötige. wenn dem aber nicht so ist, kann man sie ruhig als VARCHAR speichern. also gilt auch hier, man muss wissen, was genau er damit machen will.
Warum ist 000F19 doppelt in beiden Tabellen?
warum solte sie dort nicht doppelt vorkommen, schließlich ist es ja so eine art fremdschlüssel, der grundsätzlich mehrfach vorkommen kann ?
Mangels der Funktion der Foreign Keys in MyISAM bringt dir das exakt garnichts zur Zeit.
sie weiter oben, diese aussage sollte man so pauschal ohne die hintergründe zu kennen nicht treffen, eher vermuten.
Ilja