Translate

Pages

Monday, 13 May 2013

SQL SERVER – Collate – Case Sensitive SQL Query Search


Case Sensitive SQL Query Search
If Column1 of Table1 has following values ‘CaseSearch, casesearch, CASESEARCH, CaSeSeArCh’, following statement will return you all the four records.
SELECT Column1FROM Table1WHERE Column1 'casesearch'
To make the query case sensitive and retrieve only one record (“casesearch”) from above query, the collation of the query needs to be changed as follows.

SELECT 
Column1FROM Table1WHERE Column1 COLLATE Latin1_General_CS_AS 'casesearch'
Adding COLLATE Latin1_General_CS_AS makes the search case sensitive.
Default Collation of the SQL Server installation SQL_Latin1_General_CP1_CI_AS is not case sensitive.
To change the collation of the any column for any table permanently run following query.

ALTER TABLE 
Table1ALTER COLUMN Column1 VARCHAR(20)COLLATE Latin1_General_CS_AS
To know the collation of the column for any table run following Stored Procedure.

EXEC 
sp_help DatabaseName
Second results set above script will return you collation of database DatabaseName.

0 comments:

Post a Comment

Thank you for your valuable comments..

 
Twitter Bird Gadget