Artigo Eliminando caracteres especiais de strings no SQL Server – Collate

Veja neste artigo da DevMedia como a cláusula COLLATE pode simplificar tarefas de tratamento de texto no SQL Server. Considerando a execução de consultas a partir de um banco de dados criado com o SQL Server, costuma ser bastante comum que em determinadas situações campos do tipo texto precisem passar por um tratamento, de forma a eliminar do resultado obtido caracteres especiais como acentos, cedilha e outros símbolos oriundos de línguas estrangeiras.

Veja a matéria completa clicando aqui…

Função

CREATE FUNCTION [dbo].[FN_FORMATAR_TEXTO]
(
    @TEXTO VARCHAR(MAX)
)
RETURNS VARCHAR(MAX)
AS
BEGIN
    DECLARE @TEXTO_FORMATADO VARCHAR(MAX)
    
    -- O trecho abaixo possibilita que caracteres como "º" ou "ª"
    -- sejam convertidos para "o" ou "a", respectivamente
    SET @TEXTO_FORMATADO = UPPER(@TEXTO)
        COLLATE sql_latin1_general_cp1250_ci_as
    -- O trecho abaixo remove acentos e outros caracteres especiais,
    -- substituindo os mesmos por letras normais
    SET @TEXTO_FORMATADO = @TEXTO_FORMATADO
        COLLATE sql_latin1_general_cp1251_ci_as
    RETURN @TEXTO_FORMATADO
END
GO

Teste

SELECT dbo.FN_FORMATAR_TEXTO(‘São Paulo’) AS RazaoSocial
, dbo.FN_FORMATAR_TEXTO(‘9º Corrida de São Silvestre’) AS Endereco
, dbo.FN_FORMATAR_TEXTO(‘Soluções em Banco de Dados’) AS Cidade

 


Fonte da informações e direitos: DevMedia

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s