簡體   English   中英

如何使Sql Server 2008中的“密碼”列區分大小寫?

[英]How to make Password column in Sql Server 2008 case sensitive?

在登錄窗口中,如果密碼不匹配,則必須顯示錯誤。 我已經完成了所有編碼,但問題出在Sql Server密碼列中,不區分大小寫,我不知道如何實現。

如果用戶具有密碼abc09Fd並且他以ABC09fD格式輸入了密碼,則SQL Server將使他登錄。 如何解決這個問題。

我的表架構是

創建表用戶

UserId int身份約束PK_UserID主鍵,
RoleId int約束FK_Role_Users_RoleID外鍵引用Roles(RoleId),
用戶名nvarchar(256)不為null約束U_Users_Username unique,
密碼nvarchar(256)不為null

這是排序規則可以發揮作用的地方。

正如其他人指出的那樣,請注意存儲密碼
用純文本絕不是一個好主意。

SELECT [Password]
FROM [Users]
WHERE [Password] COLLATE Latin1_General_CS_AS = 'PaSSWord'

也可以看看:

http://msdn.microsoft.com/en-us/library/ms144250.aspx

http://blog.sqlauthority.com/2007/04/30/case-sensitive-sql-query-search/

http://www.sqlservercentral.com/blogs/rocks/2012/01/09/revised-difference-between-collat​​ion-sql_latin1_general_cp1_ci_as-and-latin1_general_ci_as/

暫無
暫無

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

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