我是否必须填写外键值?

时间:2012-11-13 22:53:58

标签: mysql database foreign-keys

我是否必须在MySQL或任何其他数据库管理器中填写外键字段?。

我正在写一个表的数据,当我从另一个表到达FK字段时,我必须写一些东西,这是必要的吗?

我知道FK中的值存储在父表所在的位置。

2 个答案:

答案 0 :(得分:1)

除非外键列可以为空,否则必须提供值。

答案 1 :(得分:0)

这取决于它是否实际上是一个外键约束(仅在InnoDB中可用)。在某些情况下,框架,应用程序或数据库管理工具会创建仅存在于应用程序中但实际上不存在于数据库中的“假”外键。此外,如何插入/更新/删除对外键实现的数据的限制可能会因约束类型而异。

以下是有关确切信息的MYSQL文档:

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

具体来说,请查看“参考操作”部分,以获取有关表之间行为的注释。