2009-04-30 11 views

回答

16

ALTER TABLE ALTER COLUMN允許改變校對單柱:

alter table Foo alter column Bar ntext collate Latin1_General_CS_AS 

(整理可能是不正確的)

+0

有關排序規則的說明:我已經寫了太多的COLLATE語句作爲源表是Latin1_General_CS_AS的結果,一個是Latin1_General_CI_AI。這真的只適用於如果你使用SSIS來移動數據,或者至少,這是我遇到過的唯一一個問題。 – Eric 2009-04-30 06:53:51

2

我不知道具體SQL Server,但通常接受的數據庫管理系統的做法(兼容性)將是:

  • 在表上插入和更新觸發器,以便它們存儲在你想要的情況。
  • 使用生成的列在需要的情況下存儲該列的另一個副本。

在SQL Server中執行它可能有一種更快的方法,但您應該小心將工作負載推入SELECT語句的解決方案 - 它們永遠不會很好地擴展。作爲插入和更新的一部分,這樣做幾乎總是更好,因爲這是數據更改的唯一時間 - 這樣做可以最大限度地減少額外的工作負載。