Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Vérifiez si la chaîne contient des caractères accentués en SQL ?

Violon SQL :http://sqlfiddle.com/#!6/9eecb7d/1607

declare @a nvarchar(32) = 'àéêöhello!'
declare @b nvarchar(32) = 'aeeohello!'

select case 
    when (cast(@a as varchar(32)) collate SQL_Latin1_General_Cp1251_CS_AS) = @a 
    then 0 
    else 1 
end HasSpecialChars

select case 
    when (cast(@b as varchar(32)) collate SQL_Latin1_General_Cp1251_CS_AS) = @b 
    then 0 
    else 1 
end HasSpecialChars

(basé sur la solution ici :comment puis-je supprimer les accents sur une chaîne ?)