mysql外键解决思路

mysql外键

我用的是mysql6.0为什么一创建两个表这间用外键来连接时就说创建不了:can”nt create table …



你的语句是什么?你的表是什么存储引擎? 如果是myisam 则不支持外键,你需要把表改为inndb




貼出SQL語句

如果SQL語句沒問題,那麼檢查一下表的建立順序,要先建主表,刪除的時候要最後刪除主表




问题:mysql error Number 1005

can’t creat table’\test\#sql-640_1.frm'(errno:150)

这个问题出现在给表加外键时。

它可能出现的情况是以下三种:

1、引用的键与原表中的数据类型不一致。

本人出错就是这个原因,原表中ID为int类型 ,但是加外键的那个表中是bigint类型。

2、找不到要被引用的列

就是找不到那个引用外键表中没有那个外键。

3、表的字符编码不一样

一般不会出现这个问题。

MySql中只有只有InnoDB类型支持外键,所以在建表的时候应该把表的类型设置成InnoDB类型的,如:

create table county ( 

countynumber integer not null auto_increment, 

countyname varchar(32), 

state varchar(32), 

primary key(countynumber) 

)type=innodb; 

mysql外键解决思路

相关文章:

你感兴趣的文章:

标签云: