Ошибка при выполнении SQL скрипта - MySQL
Формулировка задачи:
Здравствуйте. При выполнении скрипта возникает ошибка ERROR 1005 (HY000) at line 134: Can't create table 'adadad.преподаватель' (errno: 150)
-- MySQL dump 10.13 Distrib 5.7.17, for Win64 (x86_64) -- -- Host: localhost Database: деканат -- ------------------------------------------------------ -- Server version 5.7.18-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `группа` -- DROP TABLE IF EXISTS `группа`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `группа` ( `Номер группы` VARCHAR(10) NOT NULL, `Количество студентов` INT(11) DEFAULT NULL, `Проходной балл` INT(11) DEFAULT NULL, PRIMARY KEY (`Номер группы`), FOREIGN KEY (`Номер группы`) REFERENCES Студент(`Номер группы`), FOREIGN KEY (`Номер группы`) REFERENCES Изучение(`Номер группы`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `группа` -- LOCK TABLES `группа` WRITE; /*!40000 ALTER TABLE `группа` DISABLE KEYS */; /*!40000 ALTER TABLE `группа` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `изучение` -- DROP TABLE IF EXISTS `изучение`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `изучение` ( `Номер группы` VARCHAR(10) NOT NULL, `Код предмета` VARCHAR(3) NOT NULL, `Табельный номер` VARCHAR(3) NOT NULL, `Код занятия` INT(11) NOT NULL, `Число часов` INT(11) DEFAULT NULL, PRIMARY KEY (`Номер группы`,`Код предмета`,`Табельный номер`,`Код занятия`), FOREIGN KEY (`Номер группы`) REFERENCES Успеваемость(`Номер группы`), FOREIGN KEY (`Код предмета`) REFERENCES Успеваемость(`Код предмета`), FOREIGN KEY (`Табельный номер`) REFERENCES Успеваемость(`Табельный номер`), FOREIGN KEY (`Код занятия`) REFERENCES Успеваемость(`Код занятия`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `изучение` -- LOCK TABLES `изучение` WRITE; /*!40000 ALTER TABLE `изучение` DISABLE KEYS */; /*!40000 ALTER TABLE `изучение` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `кафедра` -- DROP TABLE IF EXISTS `кафедра`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `кафедра` ( `Код кафедры` VARCHAR(3) NOT NULL, `Название кафедры` VARCHAR(20) DEFAULT NULL, PRIMARY KEY (`Код кафедры`), FOREIGN KEY (`Код кафедры`) REFERENCES Преподаватель(`Код кафедры`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `кафедра` -- LOCK TABLES `кафедра` WRITE; /*!40000 ALTER TABLE `кафедра` DISABLE KEYS */; /*!40000 ALTER TABLE `кафедра` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `предмет` -- DROP TABLE IF EXISTS `предмет`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `предмет` ( `Код предмета` VARCHAR(10) NOT NULL, `Название предмета` VARCHAR(30) DEFAULT NULL, `Число часов` INT(11) DEFAULT NULL, `Аудиторные занятия` INT(11) DEFAULT NULL, `Самостоятельная работа` INT(11) DEFAULT NULL, `Номер семестра` INT(11) DEFAULT NULL, `Код формы контроля` INT(11) DEFAULT NULL, PRIMARY KEY (`Код предмета`), FOREIGN KEY (`Код предмета`) REFERENCES Изучение(`Код предмета`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `предмет` -- LOCK TABLES `предмет` WRITE; /*!40000 ALTER TABLE `предмет` DISABLE KEYS */; /*!40000 ALTER TABLE `предмет` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `преподаватель` -- DROP TABLE IF EXISTS `преподаватель`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `преподаватель` ( `Табельный номер` VARCHAR(3) NOT NULL, `Наименование преподавателя` VARCHAR(30) DEFAULT NULL, `Код кафедры` VARCHAR(3) DEFAULT NULL, `Ученая степень` VARCHAR(5) DEFAULT NULL, `Ученое звание` VARCHAR(10) DEFAULT NULL, `Должность` VARCHAR(10) DEFAULT NULL, PRIMARY KEY (`Табельный номер`), FOREIGN KEY (`Табельный номер`) REFERENCES Изучение(`Табельный номер`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `преподаватель` -- LOCK TABLES `преподаватель` WRITE; /*!40000 ALTER TABLE `преподаватель` DISABLE KEYS */; /*!40000 ALTER TABLE `преподаватель` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `студент` -- DROP TABLE IF EXISTS `студент`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `студент` ( `Номер группы` VARCHAR(10) NOT NULL, `Номер студента` VARCHAR(3) NOT NULL, `Наименование студента` TEXT(50) DEFAULT NULL, `Проходной балл` VARCHAR(50) DEFAULT NULL, PRIMARY KEY (`Номер группы`,`Номер студента`), FOREIGN KEY (`Номер студента`) REFERENCES Успеваемость(`Номер студента`), FOREIGN KEY (`Номер группы`) REFERENCES Успеваемость(`Номер группы`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `студент` -- LOCK TABLES `студент` WRITE; /*!40000 ALTER TABLE `студент` DISABLE KEYS */; /*!40000 ALTER TABLE `студент` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `успеваемость` -- DROP TABLE IF EXISTS `успеваемость`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `успеваемость` ( `Номер записи` INT(11) NOT NULL, `Номер группы` VARCHAR(10) DEFAULT NULL, `Номер студента` VARCHAR(3) DEFAULT NULL, `Код предмета` VARCHAR(3) DEFAULT NULL, `Табельный номер` VARCHAR(3) DEFAULT NULL, `Код занятия` INT(11) DEFAULT NULL, `Дата занятия` datetime DEFAULT NULL, `Балл` INT(11) DEFAULT NULL, PRIMARY KEY (`Номер записи`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `успеваемость` -- LOCK TABLES `успеваемость` WRITE; /*!40000 ALTER TABLE `успеваемость` DISABLE KEYS */; /*!40000 ALTER TABLE `успеваемость` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -- Dump completed on 2017-06-20 15:08:04
Решение задачи: «Ошибка при выполнении SQL скрипта»
textual
Листинг программы
/*!40101 SET character_set_client = utf8 */; CREATE TABLE `кафедра` ( `Код кафедры` varchar(3) NOT NULL, `Название кафедры` varchar(20) DEFAULT NULL, PRIMARY KEY (`Код кафедры`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `предмет` ( `Код предмета` varchar(10) NOT NULL, `Название предмета` varchar(30) DEFAULT NULL, `Число часов` int(11) DEFAULT NULL, `Аудиторные занятия` int(11) DEFAULT NULL, `Самостоятельная работа` int(11) DEFAULT NULL, `Номер семестра` int(11) DEFAULT NULL, `Код формы контроля` int(11) DEFAULT NULL, PRIMARY KEY (`Код предмета`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `группа` ( `Номер группы` varchar(10) NOT NULL, `Количество студентов` int(11) DEFAULT NULL, `Проходной балл` int(11) DEFAULT NULL, PRIMARY KEY (`Номер группы`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `преподаватель` ( `Табельный номер` varchar(3) NOT NULL, `Наименование преподавателя` varchar(30) DEFAULT NULL, `Код кафедры` varchar(3) DEFAULT NULL, `Ученая степень` varchar(5) DEFAULT NULL, `Ученое звание` varchar(10) DEFAULT NULL, `Должность` varchar(10) DEFAULT NULL, PRIMARY KEY (`Табельный номер`), FOREIGN KEY (`Код кафедры`) REFERENCES `кафедра`(`Код кафедры`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `студент` ( `Номер группы` varchar(10) NOT NULL, `Номер студента` varchar(3) NOT NULL, `Наименование студента` TEXT(50) DEFAULT NULL, `Проходной балл` varchar(50) DEFAULT NULL, PRIMARY KEY (`Номер группы`,`Номер студента`), FOREIGN KEY (`Номер группы`) REFERENCES `группа`(`Номер группы`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `изучение` ( `Номер группы` varchar(10) NOT NULL, `Код предмета` varchar(3) NOT NULL, `Табельный номер` varchar(3) NOT NULL, `Код занятия` int(11) NOT NULL, `Число часов` int(11) DEFAULT NULL, PRIMARY KEY (`Номер группы`,`Код предмета`,`Табельный номер`,`Код занятия`), FOREIGN KEY (`Код предмета`) REFERENCES `предмет`(`Код предмета`), FOREIGN KEY (`Табельный номер`) REFERENCES `преподаватель`(`Табельный номер`), FOREIGN KEY (`Номер группы`) REFERENCES `группа`(`Номер группы`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `успеваемость` ( `Номер записи` int(11) NOT NULL, `Номер группы` varchar(10) DEFAULT NULL, `Номер студента` varchar(3) DEFAULT NULL, `Код предмета` varchar(3) DEFAULT NULL, `Табельный номер` varchar(3) DEFAULT NULL, `Код занятия` int(11) DEFAULT NULL, `Дата занятия` datetime DEFAULT NULL, `Балл` int(11) DEFAULT NULL, PRIMARY KEY (`Номер записи`), FOREIGN KEY (`Номер группы`) REFERENCES `изучение`(`Номер группы`), FOREIGN KEY (`Номер группы`) REFERENCES `студент`(`Номер группы`), FOREIGN KEY (`Номер студента`) REFERENCES `студент`(`Номер студента`), FOREIGN KEY (`Код предмета`) REFERENCES `изучение`(`Код предмета`), FOREIGN KEY (`Табельный номер`) REFERENCES `изучение`(`Табельный номер`), FOREIGN KEY (`Код занятия`) REFERENCES `изучение`(`Код занятия`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д