Primärschlüssel und Fremdschlüssel: Datentyp?
"Begründe, warum Primärschlüssel- und Fremdschlüsselspalten im Datentyp übereinstimmen müssen."
Grundsätzlich verstehe ich die Gemeinsamkeiten und Unterschiede von Primärschlüsseln und Fremdschlüsseln, kann jedoch obige Aufgabe nicht lösen, da bei meinen Programmierungen dies bis jetzt noch keine Rolle gespielt hat.
Wäre euch sehr dankbar, wenn mir jemand helfen kann.
2 Antworten
weil sie gleich sein müssen . wenn du dich auf jemand anders beziehst , musst das auch genau diser andere sein und nicht etwas was wie dieser ist . zumal auch für dich optisch gleiche dinge halt in bytes nicht gleich sind . das zeichen 2 ist nun mal kein integer 2 . integer sind schon mal bis zu 4 byte und ein zeichen vielleicht 1 byte oder 2 byte je nach zeichensatz . ergo ... sie sind ungleich , somit ist die beziehung hinfällig , du kannst natürlich eine datenbanks chreiben die das alles noch mit beachtet aber ob das noch perfamce hat und wie eindeutig das schon beim design ist , ist fraglich .
was bei dem einen der primäreschlüssel ist ist bei dem anderen nun mal der fremdschlüssel , sind die nicht gleich , sind es ja unterschiedliche schlüssel .
du nimmst ja nur etwas aus einer relation und machst eine beziehung in einer anderen relation . ergo muss das feld der realitonen entsprechend gleich sein .
Die Frage ist schlecht gestellt, denn allgemein stimmt das nicht. In kann in einer Relation neben einem Primärschlüssel mehrere Fremdschlüssel (und sonstige Schlüsselkandidaten) haben, die allesamt verschiedene Typen besitzen.
Wie die Frage eigentlich gestellt sien müßte:
Warum müssen die Fremdschlüsselspalten den gleichen Typ wie die von ihm referenzierten (Primär)schlüsselspalten besitzen?
Nur ist so natürlich die Antwort breits offenkundig.