| | | | | | | | | | |||||||
![]() | ![]() | | |||||||||||||
| |||||||||||||||
| | #46 |
| Reg.-Benutzer Reg.-Datum: 24.02.2010 |
Ja! Und zwar in der Link-Tabelle (z.B. Link.D_ID oder Link.Dokument als int). D.h. also, du 'nimmst' dir den Primärschlüssel der betreffenden Tabelle (hier Dokument.D_ID) und 'verwendest' ihn in der anderen Tabelle (Link) als Fremdschlüssel, indem du ihn dort als Spalte anlegst (beide Datentypen müssen übereinstimmen!). Und dann kannst du noch eine CONSTRAINT für Link definieren, die sicherstellt, dass wenn du einen Wert in Link.D_ID reinschreibst, dieser auch in Dokument.D_ID existiert. Aber du kannst kein AUTO_INCREMENT für den Fremdschlüssel verwenden! Und wenn du jut bist, sachste mir noch kurz warum ...
|
| | |
| | #47 | |
| Reg.-Benutzer Reg.-Datum: 24.02.2010 | Zitat:
| |
| | |
| | #48 |
| Reg.-Benutzer Reg.-Datum: 22.02.2010 |
Sry schreib später... Hab im Moment keine Zeit mehr :/
|
| | |
| | #49 |
| Reg.-Benutzer Reg.-Datum: 22.02.2010 |
Es muss ja gleich sein, weil er das sonst nicht zuordnen könnte oder? ![]() Das mit dem Auto_Increment weiß ich nicht. Ich kenn eigentlich die ganze Bezeichnung gar nicht wenn ich ehrlich bin, ich weiß nur dass das dahin muss^^. Ähm okay dafür brauch ich aber noch bisschen Zeit Ich schreib gleich nochmal
|
| | |
| | #50 |
| Reg.-Benutzer Reg.-Datum: 22.02.2010 |
DROP DATABASE Beispiel; CREATE DATABASE Beispiel; USE Beispiel; CREATE TABLE Dokument(D_ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY , Nickname VARCHAR(25) NOT NULL); CREATE TABLE Link (L_ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY , Nickname VARCHAR(25) NOT NULL, D_ID VARCHAR(25) NOT NULL); INSERT INTO Dokument (Nickname) VALUES ("Foo"), ("Bar"); INSERT INTO Link (Nickname, Link.D_ID) VALUES ("Foolink", "1"); Also ganz leicht einfach so? Fehler sind schonmal nicht drin ;D |
| | |
| | #51 |
| Reg.-Benutzer Reg.-Datum: 24.02.2010 | Code: DROP DATABASE Beispiel;
CREATE DATABASE Beispiel;
USE Beispiel;
CREATE TABLE Dokument(D_ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
Nickname VARCHAR(25) NOT NULL);
CREATE TABLE Link (L_ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
Nickname VARCHAR(25) NOT NULL,
D_ID INT NOT NULL);
INSERT INTO Dokument (Nickname) VALUES ("Foo"), ("Bar");
INSERT INTO Link (Nickname, Link.D_ID) VALUES ("Foolink", 1);
Fehler mit dem Datentyp war also doch noch drin . Naja mach doch noch mal eine FOREIGN KEY CONSTRAINT dazu und entferne erstmal diese AUTO_INCREMENT-Geschichte, und dann kannste den Krams auf deine eigentliche Aufgabe münzen...
Geändert von karl-heinz (24.02.2010 um 23:31 Uhr) |
| | |
| | #52 |
| Reg.-Benutzer Reg.-Datum: 22.02.2010 |
Ah okay das stimmt. Jetzt muss ich nur noch wissen wie so ein constrait geht. da google ich nochmalDas Auto_Increment bei Link kann ich einfach wegmachen? |
| | |
| | #53 |
| Reg.-Benutzer Reg.-Datum: 24.02.2010 |
Alle AUTO_INCREMENT entfernen! Die Fremdschlüssel-Beschränkung hattest du schon gepostet...
|
| | |
| | #54 |
| Reg.-Benutzer Reg.-Datum: 22.02.2010 |
Achso die okay. Ist das okay wenn ich das morgen nachmittag poste? Schaff ich jetzt nicht mehr so schnell. Muss noch schlafen gehn und kann dann erst später nach der Schule morgen |
| | |
![]() |
| Lesezeichen |
| ||||||
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| MySQL wird nicht richtig installiert | Ramiel | Datenbanken | 22 | 10.02.2009 20:26 |
| MySQL Lizenzfrage | ReneMe | Datenbanken | 2 | 06.11.2008 08:11 |
| Wie kann ich MySQL Befehle auf der Konsole absetzen? | tobias-digital | Datenbanken | 3 | 08.05.2002 18:06 |
| MySQL Befehle | Scratch | Datenbanken | 1 | 19.12.2001 03:17 |
![]() |
| |||||