Php 如果引擎是MyISAM,则表中没有外键

Php 如果引擎是MyISAM,则表中没有外键,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,为什么我不能在付款表中创建外键 crate table students( text char(5)NOT NULL, id int(11)NOT NULL AUTO_INCREMENT, name varchar(250), level varchar(250), PRIMARY KEY (text,id) )ENGINE=MyISAM; 订单表是 crate table payments( p_id int(11)NOT NULL AUTO_INCREMENT, amou

为什么我不能在付款表中创建外键

crate table students(
text char(5)NOT NULL,
id int(11)NOT NULL AUTO_INCREMENT,
name varchar(250),
level varchar(250),
PRIMARY KEY (text,id)
)ENGINE=MyISAM;
订单表是

 crate table payments(
    p_id int(11)NOT NULL AUTO_INCREMENT,
    amount varchar(250),
    id int
    PRIMARY KEY (p_id)
FOREIGN KEY (id) REFERENCES students(id)
    )ENGINE=MyISAM;

因为MyISAM不支持外键。FK声明被解析,但在其他方面被忽略。您需要使用InnoDB表来实现真正的FK支持。

因为MyISAM不支持外键。FK声明被解析,但在其他方面被忽略。您需要使用InnoDB表来获得真正的FK支持。

切换到InnoDB引擎。投票关闭,因为此信息在搜索中很难获得。。首先是搜索,对吧?因为MyISAM不支持外键。另外,请检查一下,以供参考。你有一个输入错误而不是Create。我不能将我的students表更改为InnoDB,因为它有两个主键切换到InnoDB引擎。投票关闭,因为此信息在搜索中很难获得。。首先是搜索,对吧?因为MyISAM不支持外键。另外,请检查一下,以供参考。你有一个输入错误而不是Create。我无法将我的students表更改为InnoDB,因为它有两个主键