我的整个数据库都在INNDB
。我喜欢这些功能,请放下手。但是,它不允许对TEXT类型列进行全文索引。所以我必须从我的主表(INNODB
)中获取当前的TEXT列并创建一个MYISAM
表并引用回原始表。但由于MYISAM
不允许FK
约束,我意识到我已经创造了一个潜在的弱点。如果原始表索引发生更改,它将不会级联到MYISAM
表中。反之亦然,如果我从原始表创建FK
链接到MYISAM
表,并删除MYISAM
行,那么我已链接到不存在的条目。数据一致性检查根本不存在。
简而言之,INNODB
让我感到非常舒服,依赖于FK
限制因为我自己的利益。
答案 0 :(得分:0)
我会考虑根本不使用MyISAM全文索引,而是在数据库旁边使用适当的搜索引擎。 Lucene / Solr,sphinx和xapian似乎是最主要的选择(我自己只使用过Lucene / Solr)。
请参阅this question了解更多信息:)
编辑:还this question。
答案 1 :(得分:0)
如果您使用某种框架,框架可以控制您的参照完整性。 CakePHP使用他们的Model类做得很好。