我們有一個遷移工具,它貫穿所有未在客戶數據庫上運行的所有腳本,這些腳本都在事務中運行。由於全文索引,我們遇到了問題,因爲我們無法修改全文索引或創建它們的任何對象,因爲我們無法修改事務中的全文索引。帶全文索引的SQL Server遷移
我們實現了一個前置和後置的部署腳本刪除並重新創建全文索引,但我們現在有問題的是,我們不能修改其提及包含或FREETEXT,因爲它的錯誤與任何程序:
Cannot use a CONTAINS or FREETEXT predicate on table or indexed view 'xx'
because it is not full-text indexed.
我們在這裏真的沒有什麼想法了,所以我希望其他人可能會遇到一個解決方案,因爲我認爲有很多人用這種風格的全文索引數據庫運行遷移。我目前唯一的解決方案是在沒有事務的情況下運行遷移,這非常危險,因爲遷移失敗會使我們的數據庫處於部分遷移狀態。
我們的另一個選擇是將全文索引放在一起,看看Lucene.net這樣的東西,但是對於爲正確的用戶返回正確的數據給我們提出了其他問題。