簡體   English   中英

如何在sql 2005或2008中使列區分大小寫

[英]How to make a column case sensitive in sql 2005 or 2008

是否可以根據列更改默認排序規則? 我想讓1列區分大小寫,但不是所有其他區域

ALTER TABLE ALTER COLUMN允許更改單個列的排序規則:

alter table Foo alter column Bar ntext collate Latin1_General_CS_AS 

(整理可能不正確)

我不是特別了解SQL Server,但普遍接受的DBMS實踐(兼容性)將是:

  • 將insert和update觸發器放在表上,以便它們存儲在您想要的情況下。
  • 使用生成的列來存儲所需的列的另一個副本。

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

你的問題的答案是肯定的, Anton Gogolev已在上面說過。

附加信息:

以下是如何根據SQL Server的版本查找SQL Server支持的排序規則列表。

select name, 
       COLLATIONPROPERTY(name, 'CodePage') as Code_Page, 
       description
from   sys.fn_HelpCollations()

Kanatype Sensitive KS和寬度敏感是什么意思

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM