mysql 服务器有外键的概念还是只在 InnoDB 中?我知道 InnoDB 是 mysql 的一部分,但它是一种扩展。如果我只想使用 mysql 并且仍然利用外键怎么办?
谢谢
InnoDB 支持外键。见http://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html
InnoDB 是 MySQL 5.5 及更高版本中的默认存储引擎。您不应该将 InnoDB 视为“一种扩展”。 您应该使用 InnoDB,除非您有特定且可测试的理由使用其他一些存储引擎。
但是,您是对的,在存储引擎层之外,MySQL 服务器没有外键的实现。甚至外键约束语法的解析也委托给存储引擎,而所有其他 SQL 解析都在更高级别处理。
MySQL Cluster 中的 NDB 存储引擎也支持外键。
mysql中对外键的支持取决于存储引擎。
Myisam 和 innodb 是主要的存储引擎。Innodb 确实支持外键,myisam 不支持。