我有一张用于全文搜索的 myISAM 数据库表,还有一张 InnoDB 表。我想要将 myISAM 表中的一列与 InnoDB 表中的一列进行匹配,这可行吗?我似乎无法解决这个问题!
http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html
外键定义需满足以下条件:
两个表格必须都是InnoDB表格,且不能为TEMPORARY表格。
因此,恐怕您无法实现您想要的操作。
我建议您改变数据库架构,使其具有一组用于写入数据完整性的表(全部为InnoDB),以及一组专门用于搜索的表 - 可能在不同的服务器上,甚至可能不使用MySQL,而是使用像Solr或Sphinx这样的搜索服务器,这应该比全文MySQL表更有效。然后,您可以定期从写入数据库中填充搜索数据库。
TRIGGER
很容易实现这个功能。 - tadman