Fremdschlüssel richtig erstellen

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Fremdschlüssel richtig erstellen

Postby Muecke.1982 » 26. June 2017 11:22

Hallo miteinander,

ich versuche gerade einen Fremdschlüssel zu erstellen, leider klappt das bei mir nicht :-(

ich bekomme immer wider die Meldung:
Fehler beim Erzeugen eines Fremdschlüssels für Fremd_ID (überprüfen Sie die Datentypen)


Weise jemand eine Schrift für Scheit Anleitung wie ich das machen muss.
Am Besten mit zwei Muster Tabellen.
So das beide Tabelle erst erstellt werden und dann der Fremdschlüssel erstellt wird.

ich mache das alle mit der Oberfläche PHP My Admin

über Hilfe wäre ich sehr dankbar.

gruß Mücke
Muecke.1982
 
Posts: 10
Joined: 13. February 2013 09:27
Operating System: Mac OS X

Re: Fremdschlüssel richtig erstellen

Postby Nobbie » 26. June 2017 11:45

Hast Du Dich im Forum vertan? HIer ist das Xampp für Windows Forum, das ist für Installationsprobleme des Xampp Pakets.

Deine Frage ist sicherlich besser in einem SQL Forum aufgehoben. Hier gibt es leider kein SQL Forum, auch das PhpMyAdmin Unterforum beschäftigt sich nur mit Installationsproblemen, nicht mit SQL an sich.

Trotzdem ein Hinweis von mir: ein "Fremdschlüssel" ist nichts anderes, als in einer Tabelle eine Spalte zu definieren, die exakt den gleichen Datentyp und Inhalt hat wie die Spalte einer anderen Tabelle, wo der Primärschlüssel abgelegt ist. Ein Primärschlüssel sollte immer einfach nur eine Nummer sein (INTEGER), die eindeutig ist und die möglichst auch automatisch von SQL vergeben wird. Wenn eine neue Zeile eingefügt wird, schreibt SQL automatisch die nächste Zahl in dieses Feld. Verwende NIE irgendwelche Inhalte wie Namen oder Adressen oder Postleitzahlen oder Telefonnummern usw. als Primärschlüssel. Das ist ein datentechnischer Fehler (der leider immer noch selbst von erfahrenen Programmieren gemacht wird). Ein Primärschlüssel ist nur eine Nummer und hat sonst überhaupt keine weitere Bedeutung. "The key is the key and nothing but the key".

Ein Fremdschlüssel ist in einer anderen Tabelle dann also möglichst auch ein Feld mit INTEGER Werten, aber die werden nicht automatisch von SQL gefüllt, sondern das ist dann Teil Deines Programms/Scripts, diesen "Fremdschlüssel" zu füllen.
Nobbie
 
Posts: 9557
Joined: 09. March 2008 13:04

Re: Fremdschlüssel richtig erstellen

Postby Muecke.1982 » 26. June 2017 12:48

Da möchte ich mich entschuldigen, ich bin mir auch nicht sicher gewesen ob ich hier wirklich richtig bin.

Leider kenne ich kein SQL Forum, kannst du mir eins empfehlen? (in deutsch)

Genau das was du sagst, kenne ich auch und meine ich beachtet zu haben.

Tabellenformat: InnoDB

Tabelle: master

Name: id_master
Typ: INT (11)
Index : PRIMARY
A_I: AUTO_INCREMENT

Name: titel
Typ: VARCHAR(255)

Tabelle: Verknuepft
Name: id_verknuepft
Typ: INT (11)
Index : PRIMARY
A_I: AUTO_INCREMENT

Name: name
Typ: VARCHAR(255)

Name: fremd_id
Typ: INT (11)
Index : INDEX 'ich möchte je das die ID von der Tabelle master mehrfach vorkommen kann'


wenn ich in der Tabelle 'name' bin erstelle ich die Beziehung über die Beziehungsansicht

Spalte: fremd_id
Beschränkung für auswärtige Schlüssel (INNODB)
Datenbank: test
Tabelle: master
Spalte: id_master

ON DELETE: RESTRICT
ON UPDATE: RESTRICT


So ich habe das gerade alle mitgemacht, der unterschied zu bisher war das ich die Standard Kodierung wider auf latin1_swedish_ci stehen habe, ich hatte die zu beginn auf utf8_general_ci gestellt.
Jetzt habe ich keine Fehlermeldung bekommen, arrrrr..... ich könnt an die Decke springen, ...
Bin jedoch immer mich an einem guten SQL Forum in deutsch interessiert, da kann man bestimmt einiges drin suchen, ich bin ja nicht der erste der mit dem zeug arbeitet.

Gruß Mücke
Muecke.1982
 
Posts: 10
Joined: 13. February 2013 09:27
Operating System: Mac OS X

Re: Fremdschlüssel richtig erstellen

Postby Nobbie » 26. June 2017 14:20

Leider kenne ich keine SQL Foren, aber mit Google lassen sich bestimmt welche finden. Auf Anhieb habe ich das http://www.datenbankforum.com/ gefunden, sieht doch gut aus?! Gibt aber noch viel mehr.

P.S.: Als ich selbst SQL gelernt habe (ich habe es mir auch selbst beigebracht), war das "MySQL Kochbuch" mein absolutes Lieblingsbuch, das ist wirklich äußerst lehrreich und interessant. Leider ist es recht veraltet und kennt viele neuere Features nicht, aber insgesamt ist es auch heute noch ein ganz tolles Buch, mit vielen Lösungen und Beispielen, die auch das Verständnis für SQL insgesamt fördern. Das Buch gibt es nur noch gebraucht. Aber wenn Du dir etwas gutes antun willst, kaufe es Dir! Siehe Amazon https://www.amazon.de/MySQL-Kochbuch-Pa ... 3897213605
Nobbie
 
Posts: 9557
Joined: 09. March 2008 13:04

Re: Fremdschlüssel richtig erstellen

Postby Muecke.1982 » 26. June 2017 15:06

Cool danke, da werde ich mal die Suche anfeuern.

Ich habe vor 15 Jahren schon mal SQL PHP etc. programmiert, doch seit her dann auch nichts mehr, und man soll es gar nicht glauben was man alles wider vergisst in der zwischen zeit oder was es alles neues gibt.

Danke für den Link, und das Buch erde ich mir wohl auch besorgen, ist ganz gut das ganze zeug noch mal zu lesen und zu sehen das Fischt das ein oder andre wider auf ;-)

gruß Mücke
Muecke.1982
 
Posts: 10
Joined: 13. February 2013 09:27
Operating System: Mac OS X


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 11 guests