假设我在 MySQL 数据库中有一堆 MyISAM 表。我知道如果我的表是 InnoDB MySQL Workbench 会自动获取表之间的关系。但是,如果我的表是 MyISAM,有没有一种方法可以选择在 MySQL Workbench 中用作外键的列,而不需要 MySQL Workbench 在我的表模式中添加列?例如,假设我在一个名为的表中有这些列users
:
id PRIMARY KEY
username VARCHAR (255)
password VARCHAR (255)
email VARCHAR (255)
user_type_id INT
正如您在上面看到的,user_type_id
将是来自名为 的表的外键user_types
。users
如果我在我的表和user_types
MySQL Workbench 中添加多对一关系,user_types_id
则会自动将一列添加到我的表的模式中users
(因为 MySQL Workbench 通常将其视为外键)。我不希望这种情况发生,我希望能够告诉 MySQL Workbench 使用该列user_type_id
作为我的外键。我有什么办法可以做到吗?
谢谢
注意:当我在 MySQL Workbench 的模型视图上双击一个表时,有一个外键选项卡,但是当我这样做时,我得到以下文本:
注意:只能为某些存储引擎(如 InnoDB)定义外键。服务器接受其他存储引擎的外键定义,但默默地忽略它们。将您的表引擎切换到支持外键的引擎,以便在此处进行调整。