如何检查是否创建了外键



我用NaviCat(一个MySQL应用程序)创建了一个外键,但创建它的那一刻,它就从外键列表中消失了,并添加了一个新的索引。这是否意味着出了什么问题,或者发生这种情况正常?

我尝试过使用information_schema如何检查列是否已经是外键?但产生CCD_ 1。是否可能是针对MsSQL的查询,而与MySQL不同?

  1. 您可能正在创建外键的表是MyISAM。转到表设计视图并转到选项选项卡,将表引擎更改为InnoDB

  2. 您可以按照中的步骤将所有表更改为InnoDBhttp://kevin.vanzonneveld.net/techblog/article/convert_all_tables_to_innodb_in_one_go/

  3. 在MySQL配置文件(通常是my.cnf)的[mysqld]部分添加默认存储引擎=innodbhttp://dev.mysql.com/doc/refman/5.5/en/innodb-default-se.html

MySQL 5.5没有任何缺陷,InnoDB是默认的存储引擎。

执行

SHOW CREATE TABLE myTable;

然后检查

ENGINE = InnoDB

如果这是真的,您可以使用外键。检查它是否包含这样的内容:

FOREIGN KEY (customer_id)  REFERENCES customer(id)

希望能有所帮助!

相关内容

  • 没有找到相关文章

最新更新