【发布时间】:2020-09-04 16:30:51
【问题描述】:
每当我尝试将此 sql 文件导入本地主机时,都会收到以下错误消息
(#1005 - 无法创建表
hostel_management_system.Hostel_Manager(errno: 150 "外键约束格式不正确"))
这里是sql:
DROP TABLE IF EXISTS `Hostel_Manager`;
CREATE TABLE `Hostel_Manager` (
`Hostel_man_id` int(10) NOT NULL AUTO_INCREMENT,
`Username` varchar(255) NOT NULL,
`Fname` varchar(255) NOT NULL,
`Lname` varchar(255) NOT NULL,
`Mob_no` varchar(255) NOT NULL,
`Hostel_id` int(10) NOT NULL,
`Pwd` LONGTEXT NOT NULL,
`Isadmin` tinyint(1) DEFAULT '0',
PRIMARY KEY (`Hostel_man_id`),
UNIQUE (`Username`),
KEY `Hostel_id` (`Hostel_id`),
CONSTRAINT `Hostel_Manager_ibfk_1` FOREIGN KEY (`Hostel_id`) REFERENCES `Hostel` (`Hostel_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
LOCK TABLES `Hostel_Manager` WRITE;
UNLOCK TABLES;
宿舍表:
CREATE TABLE `Hostel` (
`Hostel_id` int(10) NOT NULL AUTO_INCREMENT,
`Hostel_name` varchar(255) NOT NULL,
`current_no_of_rooms` varchar(255) DEFAULT NULL,
`No_of_rooms` varchar(255) DEFAULT NULL,
`No_of_students` varchar(255) DEFAULT NULL,
PRIMARY KEY (`Hostel_id`)
)
为什么会出现该错误以及如何解决?
【问题讨论】:
-
请向我们展示表
Hostel的create table语句。 -
对不起,我忘了添加它....
-
请为您的问题选择正确的标签。 SQL Server 在这里无关紧要,因为代码不是 T-SQL。选择正确的标签将产生快速准确的答案。
标签: mysql sql foreign-keys create-table