ERROR 1005 (HY000): Can't create table 'students.#sql-d9

时间:2022-05-19 20:43:35

今天在创建外键的时候出现以下错误
       ERROR 1005 (HY000): Can't create table 'students.#sql-d99_3' (errno: 150)

格式:
ALTER TABLE student ADD FOREIGN KEY(CID) REFERENCES courses;
解决方法:
1、因为博主的student表和courses表的cid的类型不一样,
        student:cid(int,unsigned,not null)
        courses: cid(tinyint,unsigned,not null)
        利用alter把两张表的cid字段类型都改成int就可以了
2、因为我写的语句有问题,应该这样写
        ALTER TABLE student ADD FOREIGN KEY(CID) REFERENCES courses(CID);
      感觉好奇怪,既然语句都没有写对,竟然报这样的错。。。。
3、提示存储引擎为MyISAM的表是没有办法创建外键的
          ALTER TABLE student ENGINE=InnoDB