在SQLServer中區分大小寫的幾種方法

2021-09-22 09:20:37 字數 2000 閱讀 7890

第一種:(蟋蟀)

alter table tb

alter column colname nvarchar(100) collate chinese_prc_ci_as 

--不區分大小寫

alter table tb 

alter column colname nvarchar(100) collate chinese_prc_cs_as 

--區分大小寫

alter database 資料庫 collate chinese_prc_cs_as 

第二種:(tree)

--建立如下使用者自定義函式(udf)

create function strcomp(@str1 varchar(50),@str2 varchar(50))

--alter function strcomp(@str1 varchar(50),@str2 varchar(50))

returns integer

asbegin

declare @i integer

--declare @str1 varchar(50)

--declare @str2 varchar(50)

declare @y int

--set @str1='a'

--set @str2='a'

set  @i=0

--select ascii(substring(@str1,@i+1,1))

set @y=1

declare @ilen int

set @ilen = len(ltrim(rtrim(@str1)))

if len(ltrim(rtrim(@str1))) < len(ltrim(rtrim(@str2))) --then

set @ilen = len(ltrim(rtrim(@str2)))

while (@i < @ilen)

begin

if (ascii(substring(@str1,@i+1,1))=ascii(substring(@str2,@i+1,1))) --then

set @i = @i +1

else

begin

set @y=0

break

endend

return @y

end測試:

select *

from table1

where dbo.strcomp(field1,'aabb') =1 

第三種:(oliver)

sql server 資料庫中的文字資訊可以用大寫字母、小寫字母或二者的組合進行儲存。例如,姓氏可以"smith"、"smith"或"smith"等形式出現。

資料庫是否區分大小寫取決於 sql server 的安裝方式。如果資料庫區分大小寫,當搜尋文字資料時,必須用正確的大小寫字母組合構造搜尋條件。例如,如果搜尋名字"smith",則不能使用搜尋條件"=smith"或"=smith"。

另外,如果伺服器被安裝成區分大小寫,則必須用正確的大小寫字母組合提供資料庫、所有者、表和列的名稱。如果提供的名稱大小寫不匹配,則 sql server 返回錯誤,報告"無效的物件名"。

當使用關係圖窗格和網格窗格建立查詢時,查詢設計器始終正確地反映出伺服器是否區分大小寫。但是,如果在 sql 窗格中輸入查詢,則必須注意使名稱與伺服器解釋名稱的方式相匹配。

如果伺服器是用不區分大小寫的選項安裝的,則

提示   若要確定伺服器是否區分大小寫,請執行儲存過程 sp_server_info,然後檢查第 18 行的內容。如果伺服器是用不區分大小寫的設定安裝的,則 sort_order 選項將設定為"不區分大小寫"。可以從查詢分析器執行儲存過程。

第四種:(非雲)

select * from servers where convert(varbinary, name)=convert(varbinary, n'rockey')

第五種:()

ascii('a')再配合substring()一起用

分類: 

kettle在多環境中區分環境使用

kettle的kettle.properties可以根據環境新增值,job中使用變數,達到區分環境的效果。通常我們專案中每個環境的資料庫都是分開的,這個時候我們就需要根據環境來設定資料庫的連線資訊了,如 編輯kettle.properties 資料庫連線使用變數 這樣就能達到區分環境的效果。自定義修...

js中區分 和0

在js中if 0 的結果是true。有時候我們在處理 和0的時候是執行不同步驟的。這時候我們需要區分這兩者。這時候可以使用js的string 函式轉化為string再進行判斷。此外 還有一些為true的情況 0 false false null undefined 同時,以上的0,false,nul...

在 qt pro檔案中區分不同的qt版本

由於不同的版本的qt需鏈結不同的庫檔案,為了在專案檔案中對這個問題進行透明處理,需在 pro檔案中加入對當前qt 版本的判斷 chec qtversionqt version qt version qt version split qt version,qt ver maj member qt ve...