mysql - 在 phpMyAdmin 中消失的外键

标签 mysql foreign-keys phpmyadmin

我正在 mysql 中创建一个新表,我正在尝试向其中一个字段添加外键约束。

CREATE TABLE `onlineorder` (
  `receiptid` varchar(10) NOT NULL default '',
  `delivereddate` date default NULL,
  `cid` int(10) NOT NULL,
  `card#` int(10) default NULL,
  `expire` date default NULL,
  PRIMARY KEY  (`receiptid`),
  FOREIGN KEY (receiptid) REFERENCES purchase
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

但是,在它创建之后,我进入 phpMyAdmin 并导出表。看起来外键约束已经消失了。

CREATE TABLE `onlineorder` (
  `receiptid` varchar(10) NOT NULL default '',
  `delivereddate` date default NULL,
  `cid` int(10) NOT NULL,
  `card#` int(10) default NULL,
  `expire` date default NULL,
  PRIMARY KEY  (`receiptid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

是 phpMyAdmin 去掉了外键还是我做错了什么?

最佳答案

您需要使用 InnoDB 引擎才能拥有外键。

引用:http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html

关于mysql - 在 phpMyAdmin 中消失的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/296730/

相关文章:

mysql - 我需要在结果集中打印变量

php - 管理外键

MySQL 使用外键创建表给出 errno : 150

mysql - MYSQL 中的外键是如何工作的?

php - 如何让 php 自动扫描并添加按日期排序的文件到下载页面

mysql - 在sql文件中读取文本文件

mysql - 当我尝试向表中添加第三个外键时,出现无法添加外键约束错误

phpmyadmin - 首次从 xampp 打开 phpmyadmin 时,无法将标量值用作数组

php - MySQL 检查字符串是否存在并更新或创建

mysql - phpMyAdmin 更改默认主题