Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> bład errno: 150, tworzenie obcych kluczy
squid
post
Post #1





Grupa: Zarejestrowani
Postów: 358
Pomógł: 0
Dołączył: 3.07.2003
Skąd: Szczecin->niebuszewo->*(next to window)

Ostrzeżenie: (0%)
-----


majac takie tabele :
  1. CREATE TABLE `nodes` (
  2. `nodeID` int(10) UNSIGNED NOT NULL,
  3. `nodeName` varchar(64) DEFAULT NULL,
  4. PRIMARY KEY (`nodeID`)
  5. ) TYPE=InnoDB;
  6.  
  7. # --------------------------------------------------------
  8.  
  9. #
  10. # Struktura tabeli dla `blood`
  11. #
  12.  
  13. CREATE TABLE `blood` (
  14. `parentID` int(10) UNSIGNED NOT NULL,
  15. `childID` int(10) UNSIGNED NOT NULL,
  16. INDEX (`parentID`,`childID`),
  17. FOREIGN KEY(`parentID`) REFERENCES nodes(`nodeID`),
  18. FOREIGN KEY(`childID`) REFERENCES nodes(`nodeID`)
  19. ) TYPE=InnoDB;


otrzymuje taki komunikat:
Cytat
Błąd


zapytanie SQL : 


CREATE TABLE `blood` (
`parentID` int( 10 ) unsigned NOT NULL ,
`childID` int( 10 ) unsigned NOT NULL ,
INDEX ( `parentID` , `childID` ) ,
FOREIGN KEY ( `parentID` ) REFERENCES nodes( `nodeID` ) ,
FOREIGN KEY ( `childID` ) REFERENCES nodes( `nodeID` )
) TYPE = InnoDB


MySQL zwrócił komunikat:


#1005 - Can't create table './test2/blood.frm' (errno: 150)


nie wiem co tam poprawic, ktos ma jakis pomysl?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
squid
post
Post #2





Grupa: Zarejestrowani
Postów: 358
Pomógł: 0
Dołączył: 3.07.2003
Skąd: Szczecin->niebuszewo->*(next to window)

Ostrzeżenie: (0%)
-----


Cytat(spenalzo @ 2004-10-20 23:34:12)
Ano faktycznie, przyznaje sie do błedu, nie zauważyłęm że jest tam typ InnoDB (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

i to od bardzo dawna (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

co do childID to musi byc kluczem obcym tak samo jak parentID

jesli chodzi o indeks dla nodes.nodeID to wiem iz musi byc zalozny kiedy uzywam kluczy obcych ale zauwazcie ze ustawieml
  1. PRIMARY KEY (`nodeID`)

a to automatycznie powoduje powstanie indeksu dla atrybutu/kolumny nodeID tak samo jak aotomatycznie przypisywany jest NOT NULL

spradze jeszcze te prawa do katalogu ale nie wietrze powodzenia (inne tabele dodaje ok)

Ten post edytował squid 23.10.2004, 22:38:13
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.09.2025 - 17:19