Avatar billede zac Nybegynder
02. november 2005 - 19:02 Der er 2 kommentarer og
1 løsning

Hvor ses, at man har lavet tb'er t InnoDB m. foreign key constr.

Bruger phpMyAdmin 2.6.4., næsten nyeste.

Har 3 tabeller (InnoDB), som skal give afsnit i artikel i kapitel - og foreign key constraint:

tb afsnit med felterne afsnitId (primær), artikelId (index)
tb artikler med felterne artikelId (primær), kapitelId (index)
tb kapitler med feltet kapitelId (primær)

De tre tabeller blev lavet om fra MyISAM til InnoDB for at kunne lave foreign key constraints - uden fejlmeldinger.

Har derefter lavet
ALTER TABLE afsnit
ADD FOREIGN KEY (artikelId) REFERENCES artikler(artikelId);
og
ALTER TABLE artikler
ADD FOREIGN KEY (kapitelId) REFERENCES kapitler(kapitelId);
- uden fejlmeldinger.

Har så testet, og fået oprettet ny artikel med et kapitelId, som IKKE findes i tb kapitler. Det skulle ikke være muligt!?

Forklaring? Og hvor ser man, hvilke foreign key constraints der er? Så vidt jeg kan se, siger phpMyAdmin ikke noget om det...
Avatar billede zac Nybegynder
02. november 2005 - 19:11 #1
SHOW CREATE TABLE artikler;
siger intet om foreign key constraints - så det er åbenbart ikke udført...
Hvorfor f... accepterer den så bare ALTER TABLE artikler
ADD FOREIGN KEY (kapitelId) REFERENCES kapitler(kapitelId);
- uden fejlmeldinger.
Avatar billede zac Nybegynder
03. november 2005 - 15:22 #2
ok, ikke den store respons - kan se efter videre surfning, at det er ret komplext.
Jeg opgiver ideen om foreign key constraint, kan se her: http://www.microway.com.au/catalog/mysql/innodb.stm - at man ikke bare kan flytte tabellerne under InnoDB (min lokalserver hjemme) over på en installation (mit webhotel ude i byen).
Hvis jeg altså har forstået det rigtigt...
Avatar billede zac Nybegynder
03. november 2005 - 15:24 #3
hvis webhotellet altså har skip-innodb i sin my.ini og derfor ikke kan tage InnoDB
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester