2012年12月21日 星期五

Transact-SQL 使用 Binary_Checksum 檢查字串是否含大/小寫英文字母


開發 Stored Procedure 時,偶爾會遇到需要判斷某字串中是否包含大寫英文字母的情況,此時可利用 Binary_Checksum 進行處理。



1) 找出某字串是否含大寫英文字母
declare @Test_String  nvarchar(20),
  @Lowercase_String nvarchar(20)
  
select @Test_String = 'Apple'
select @Lowercase_String = lower(@Test_String)

if binary_checksum(@Lowercase_String) = binary_checksum(@Test_String)
 select '均為小寫'
else
 select '發現大寫英文字母'

2) 找出某字串是否含小寫英文字母
declare @Test_String  nvarchar(20),
  @Uppercase_String nvarchar(20)
  
select @Test_String = 'APPLe'
select @Uppercase_String = upper(@Test_String)

if binary_checksum(@Uppercase_String) = binary_checksum(@Test_String)
 select '均為大寫'
else
 select '發現小寫英文字母'