+ -
当前位置:首页 → 问答吧 → errno 150

errno 150

时间:2011-11-23

来源:互联网


DROP DATABASE IF EXISTS `stuManager`;
CREATE DATABASE `stuManager` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `stuManager`;

CREATE TABLE `admin` (  
  `id` int(16) NOT NULL auto_increment,  
  `name` varchar(32) default NULL,  
  `password` varchar(32) default NULL,  
  PRIMARY KEY (`id`)  
  );

CREATE TABLE `student` (  
  `id` int(32) NOT NULL auto_increment,  
  `name` varchar(32) default NULL,  
  `password` varchar(32) default NULL,  
  `jiguan` varchar(32) default NULL,  
  `department` varchar(32) default NULL,  
  `sex` varchar(32) default NULL,  
  `mark` int(11) default NULL,  
  `tel` varchar(32) default NULL,  
  `phone` varchar(32) default NULL,  
  `email` varchar(32) default NULL,  
  PRIMARY KEY (`id`)  
  );


CREATE TABLE `teacher` (  
  `id` int(32) NOT NULL auto_increment,  
  `name` varchar(32) default NULL,  
  `password` varchar(32) default NULL,  
  `title` varchar(32) default NULL,  
  PRIMARY KEY (`id`)  
  );

CREATE TABLE `course` (  
  `id` int(32) NOT NULL auto_increment,  
  `name` varchar(32) default NULL,  
  `mark` int(11) default NULL,  
  `prepare` varchar(32) default NULL,  
  `dep` varchar(32) default NULL,  
  PRIMARY KEY (`id`)  
  );




在创建下面两个表的时候,出现
ERROR 1005 (HY000):Can't create table '.\stumanager\classes.frm' (errno:150)




CREATE TABLE `classes` (  
  `id` int(32) NOT NULL auto_increment,  
  `tea_id` varchar(32) default NULL, 
  `cour_id` varchar(32) default NULL, 
  `room_id` varchar(32) default NULL, 
  `cour_time` varchar(32) default NULL, 
  PRIMARY KEY (`id`),  
  KEY `FK_Reference_4` (`tea_id`),  
  KEY `FK_classes` (`cour_id`),  
  CONSTRAINT `classes_ibfk_1` FOREIGN KEY (`cour_id`) REFERENCES `course` (`id`),  
  CONSTRAINT `FK_Reference_4` FOREIGN KEY (`tea_id`) REFERENCES `teacher` (`id`)  
  );


CREATE TABLE `enrol` ( 
  `class_id` int(32) default NULL auto_increment, 
  `stu_id` varchar(32) default NULL, 
  `accept` varchar(32) default NULL, 
  `score` varchar(32) default NULL, 
  KEY `FK_enrol` (`class_id`),  
  KEY `FK_Reference_2` (`stu_id`), 
  CONSTRAINT `enrol_ibfk_1` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`),
  CONSTRAINT `enrol_ibfk_2` FOREIGN KEY (`stu_id`) REFERENCES `student` (`id`)
  );

作者: super_zgh   发布时间: 2011-11-23

太长,你这个可能是 mysql.建议去mysql版

作者: jinfengyiye   发布时间: 2011-11-23

又是MySQL?


建議樓主去MYSQL版問問

作者: roy_88   发布时间: 2011-11-23

引用 1 楼 jinfengyiye 的回复:
太长,你这个可能是 mysql.建议去mysql版
.

作者: ssp2009   发布时间: 2011-11-23

到mysql 版去问一下吧!

作者: lzd_83   发布时间: 2011-11-23

主外键 类型不匹配

作者: lxpbs8851   发布时间: 2011-11-23

CREATE TABLE `course` (  
  `id` int(32) NOT NULL auto_increment, 是 int


`cour_id` varchar(32) default NULL, 是varchar

作者: lxpbs8851   发布时间: 2011-11-23

不能在“被reference的表”里找到包含“被reference字段”的索引,或者是两个关联字段类型不匹配

作者: fredrickhu   发布时间: 2011-11-23

两种可能性 一种是没有设置主键 一种是字段类型不匹配。

作者: fredrickhu   发布时间: 2011-11-23