2008-09-19 26 views
2

ASP.Net成員和朋友的SQL模式中以「Lowered」爲前綴的列名稱的體系結構原因是什麼?有問題的列的一些示例如下:asp.net成員資格表中Lowered *列的要點是什麼?

  • aspnet_Applications.LoweredApplicationName
  • aspnet_users.LoweredUserName
  • aspnet_membership.LowerEmail

我看到降低列索引,但它似乎我可以指出相關的非降級列,並避免出現明顯的重複。

我相信他們有一個很好的理由存在,但我無法弄清楚。

回答

2

在像SQL Server這樣的不區分大小寫的數據庫中沒有這個目的。無論您使用哪種數據庫,這都是可重複使用的數據庫。例如。 Informix對所有存儲的字符串數據都區分大小寫。在Informix服務器上使用此數據庫將是擁有/使用此列而不是自己使用lower()列的好理由。我並不是說你無法以任何方式在SQL Server中執行區分大小寫的搜索(varbinary,BINARY_CHECKSUM,runtime/declarative COLLATE等)。這會改變開箱即用的數據庫的功能。

任何計算列的想法是在查詢期間保存這些計算的週期。特別是在大型查詢期間。另一個想法是你在索引這些列的時候。再次,這是爲了節省週期。