5

成功したリターン

Dim user = "ravi"
        Dim pass = "admin"
        objcmd.CommandText = "Select * from ADMIN_INFO where ADMIN_ID='" & user & "' and ADMIN_PASS='" & pass & "'"

成功したリターン

Dim user = "ravi"
        Dim pass = "ADMIN"
        objcmd.CommandText = "Select * from ADMIN_INFO where ADMIN_ID='" & user & "' and ADMIN_PASS='" & pass & "'"

クエリの実行後、両方とも成功を返します。ここでは、テーブルのみraviadmin使用可能です。では、大文字と小文字の区別を確認するにはどうすればよいですか。助けが必要 !!

4

2 に答える 2

2
CREATE TABLE #temp
(
    Password Varchar(2)
)
insert into #temp values('a')

最初のアプローチ

select Password  from #temp Where Password COLLATE Latin1_general_CS_AS  = 'A' 
select Password  from #temp Where Password COLLATE Latin1_general_CS_AS  = 'a' 

第二のアプローチ

select Password  from #temp Where cast(Password as varbinary(2))  = cast('A' as varbinary(15)) 
select Password  from #temp Where cast(Password as varbinary(2))  = cast('a' as varbinary(15)) 

drop table #temp
于 2012-04-05T17:51:49.673 に答える
2

この記事が役立つ場合があります: SQL Server クエリでの大文字と小文字を区別する検索。ただし、通常、最初からパスワードをプレーン テキストで保存することはお勧めできません。

また、データベースから管理行を選択するだけで、デフォルトで大文字と小文字が区別される.Net側でパスワード比較を行うことができます。

bool result = string1.Equals(string2); //this is case sensitive unless you specify otherwise
于 2012-04-05T17:58:46.047 に答える