Vielleicht hats schon jemand angemerkt, dennoch:
- lang darf nicht nullable sein, u.a. die vermurksten Beispieldaten belegen warum
Die Angaben sind ja nur so hingeschrieben! "lang" darf natürlich in der richtigen Tabelle NULL sein!
Das beisst sich allerdings mit der später von Dir getätigten Aussage: "lang+content_id sind UNIQUE!"
- Was heisst hier content_id? Sind da zwei Identifikationssysteme am Start? (Nein, wohl nicht, da gibts Dubletten, also was soll der Murks?)
lang+content_id sind UNIQUE! Die id wäre theoretisch überflüssig, da lang+content_id einen Primärschlüssel ausmachen.
Es wäre U.E. vorteilhaft mit einer weiteren Tabelle "languages" zu kommen und in die Tabelle nur die Zeiger (und den einen Text) einzutragen. Dann mit einem nichtzusammengesetzten Primärschlüssel kommen. (Letzteres machst Du ja schon richtigerweise (PK:id).)
- "pos" deutet auf weiteren Murks hin. Welche Semantik haben wir da?
pos ist einfach ein Parameter zum Sortieren der Menueinträge: Um so größer pos, um so weiter unten steht der Menupunkt!
Ob das man gut ist für die Datenintegrität und so. ;)
P.S.: Problem ist gelöst.
;)