我有很多數據被輸入到HTML實體&
的記錄中。全文搜索單詞「amp」將導致顯示包含&
的記錄,這是非常不希望的。忽略MySQL中與&符號的HTML實體全文搜索
大概這是因爲MySQL忽略'&'和';'。因此,任何人都不知道MySQL內的任何方式來強制它將特殊字符作爲單詞的一部分來對待,以便我對「amp」的搜索不包括其中包含&
的所有結果 - 理想情況下沒有某種形式的子查詢或額外WHERE子句?
我到目前爲止的解決方案(尚未實現)是解碼INSERT上的實體,並在網絡上顯示時對它們進行重新編碼。這樣可以,但是如果可能的話,我會盡量避免一些額外開銷。此外,它適用於新的條目,但我需要將其備份到近700萬條記錄......我不想有要做,如果我可以幫助它。
-
我更新了我的my.cnf
文件有以下幾點:
ft_stopword_file = /etc/mysql/custom-stopwords
是否有必須在這個文件中的任何特殊權限?
經過多方考慮和深思熟慮之後,我覺得解碼實體並將它們存儲在單獨的列中是我最好的選擇。它是最靈活的,即使不是內存方面最便宜的選擇......也是一種可允許的副作用檢測方法 – simonhamp 2010-12-23 18:03:26