Forum Webscript.Ru
Общие => Базы данных => Тема начата: Neter от 13 Сентября 2002, 12:03:45
-
Вот недавно захотел их поюзать, а они чё-то не катят..
У меня стоит MySQL версии: 3.23.42..
Почитал ФАКу к нему, там написано чё-то по типу:
rules_id integer NOT NULL REFERENCES rules
в таблице rules поле id - PRIMARY KEY
таблица создалась вроде нормально, без ошибок, но референции не работают..
Ещё пробывал так:
rules_id integer NOT NULL,
FOREGIN KEY (rules_id) REFERENCES rules(id)
Но при создании таблицы выскакиват ошибка синтаксиса в этом месте...
-
просто REFERENCES ничего не делают :) они для совместимости с другими СУБД :)
что касается foreign key - они поддерживаются только у таблиц InnoDB (обе таблицы), проверь какой тип твоей таблицы.
SHOW TABLE STATUS LIKE .. или SHOW CREATE TABLE
кроме того оба столбца (rules_id и rules(id)) - должны быть проиндексированы.
ПС: Если хочешь поиграться с foreign key я бы тебе посоветовала проапгрейдится до 3.23.52, там не только проверякется ссылочная целостность, но и работают ON CASCADE DELETE, ON CASCADE SET NULL
да и багов достаточно было пофиксено.
-
Ладно, спасибо, пойду качать 3.23.52..
П.С.
Незнал, что тут девушки ходют.. да ещё тАкие :)