У меня есть этот код:Ошибка 1005 (HY000) MySQL Ошибка
CREATE DATABASE IF NOT EXISTS courses;
USE 'courses'
CREATE TABLE IF NOT EXISTS teachers(
id INT(10) UNSIGNED PRIMARY KEY NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
addr VARCHAR(255) NOT NULL,
phone INT NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS lessons(
id INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
room TINYINT NOT NULL,
length INT NOT NULL,
lesson_date DATETIME NOT NULL,
teacher INT NOT NULL,
course INT NOT NULL,
FOREIGN KEY(teacher) REFERENCES teachers(id),
FOREIGN KEY(course) REFERENCES courses(id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS courses(
id INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
title VARCHAR(200) NOT NULL,
length INT NOT NULL,
description TEXT DEFAULT '',
previous INT NOT NULL,
FOREIGN KEY(previous) REFERENCES courses(id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
После выполнения этого кода, у меня есть сообщение об ошибке: Error 1005 (HY000) Невозможно создать таблицу 'courses.lessons' (ERRNO : 150) Что я сделал не так?
FOREIGN KEY (курс) Литому курсы (ID) - ссылка на таблицу, которая не существует yet.USE \ '\' курсы с обратными кавычками. – Mihai
Таблица «курсы» еще не создана, и она указана в разделе «FOREIGN KEY» таблицы уроков. Попробуйте поменять порядок последних двух таблиц. – Hope4You
У вас не может быть значение по умолчанию 'TEXT' – Prix