Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > Ошибка при создании таблицы


Автор: krubik 27.1.2009, 12:09
После попытки исполнения запроса
CREATE TABLE employee.tbl_phone {
id_phone int NOT NULL auto increment,
id_empl int,
type varchar(100),
number varchar(100),
PRIMARY KEY (id_phone),
INDEX(id_empl),
FOREIGN KEY (id_empl) REFERENCES tbl_emloyee(id_employee)
} ENGINE=InnoDB;
Выдает следующую ошибку:
[Error Code:1005 SQL State: HY000] Can't create table......(erno: 150)
В другой базе прокатило на ура, в этой создаются только таблицы не имеющие FOREIGN KEY, в чем трабл?
Заранее благодарен.

Автор: ТоляМБА 27.1.2009, 12:19
krubik, а у тебя настройки базы дают право создавать таблицы типа InnoDB? Проверь руками, создай таблицу и выбери типы, если там нет InnoDB, то скорее всего из-за этого. Если так, то лечится поиском в гугле настроек базы.

Автор: krubik 27.1.2009, 12:25
Проверял дают

Автор: skyboy 27.1.2009, 13:18
Цитата(krubik @  27.1.2009,  11:25 Найти цитируемый пост)
Проверял дают 

то есть, ты смог создать таблицу безо всяких foreign key, просто с указанием движка innodb? 
Цитата(krubik @  27.1.2009,  11:09 Найти цитируемый пост)
[Error Code:1005 SQL State: HY000] Can't create table......(erno: 150)

сообщение об ошибке прямо так обрезано и было?

Автор: Бонифаций 28.1.2009, 16:09
в tbl_emloyee поле id_employee проиндекировано?

Автор: krubik 6.2.2009, 12:31
Всем спасибо уже разобрался

Автор: ТоляМБА 6.2.2009, 12:39
krubik, а сказать где грабли были уже не надо?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)