ERROR 1005 (HY000): Can't create table 'starive.SC' (errno: 150)"

starive發表於2014-08-27

規範說明:所有的error 標題寫成 error  No *:   key words

key words: 是報錯資訊關鍵詞,因為標題有字數限制,所有不能把整個報錯資訊都寫在部落格title上,只能取關鍵詞,以便於日後檢視。






自己在往MySQL裡面插入資料時,發現產生error:  "ERROR 1005 (HY000): Can't create table 'starive.SC' (errno: 150)"

先後建立表 SC, 直到第三次才成功:

點選(此處)摺疊或開啟

  1. CREATE TABLE SC(Sno CHAR(9) NOT NULL,cno CHAR(6) NOT NULL,Grade SMALLINT,PRIMARY KEY (Sno,cno),constraint f1 FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (Cno) REFERENCES Course(cno))engine= innodb;


  2. CREATE TABLE SC(Sno CHAR(9) not null,cno CHAR(6) not null,Grade SMALLINT,PRIMARY KEY (Sno,cno),constraint f1 FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (cno) REFERENCES Course(cno))engine= innodb;


  3. CREATE TABLE SC(Sno CHAR(9),cno CHAR(6),Grade SMALLINT,PRIMARY KEY (Sno,cno),constraint f1 FOREIGN KEY (Sno) REFERENCES Student(Sno),FOREIGN KEY (cno) REFERENCES course(cno))engine= innodb;

原因見: http://www.itokit.com/2012/0730/74634.html

MYSQL在LINUX下資料庫名、表名、列名、別名大小寫規則如下:

1.資料庫名與表名是嚴格區分大小寫的
2.表的別名是嚴格區分大小寫的
3.列名與列的別名在所有的情況下均是忽略大小寫的
4.變數名也是嚴格區分大小寫的


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26435490/viewspace-1258771/,如需轉載,請註明出處,否則將追究法律責任。

相關文章