Developing

Introdução

Depois de muito tempo sem nenhum post, de tempos de muita correria mas, marcado também por entregas de ótimos projetos, mostrarei um código bem simples, mas, extremamente útil.

Na verdade não fui em quem fiz, peguei o código no link mostrado no fim do artigo nas referências. Existem muitas formas de fazer essa funcionalidade, essa que eu peguei foi a primeira que achei mas gostei dela.

SQL

ALTER FUNCTION dbo.RemoveAcentos (
@TEXTO VARCHAR (5000)
)
RETURNS VARCHAR (5000)

AS

BEGIN
DECLARE @COMACENTOS VARCHAR(50),
@SEMACENTOS VARCHAR (50),
@QTD_TEXTO INT,
@CONTADOR INT,
@QTD INT,
@CONT INT,
@CONT_C INT,
@LETRA_T VARCHAR(1),
@LETRA_C VARCHAR(1),
@RESULTADO VARCHAR (5000),
@TEXTE VARCHAR (30)

SET @COMACENTOS = 'ÀÂÊÔÎÛÃÕÁÉÍÓÚÇÜ'
SET @SEMACENTOS =  'AAEOIUAOAEIOUCU'
SET @QTD_TEXTO = (SELECT LEN(@TEXTO))
SET @CONTADOR = 0
SET @RESULTADO = ''

INICIO:
WHILE @CONTADOR < @QTD_TEXTO
BEGIN
SET @CONTADOR = @CONTADOR+1
SET @LETRA_T = (SELECT SUBSTRING(@TEXTO,@CONTADOR,1))
SET @CONT = (SELECT LEN(@COMACENTOS))
SET @QTD = 0
WHILE @QTD < @CONT
BEGIN
SET @QTD = @QTD + 1
SET @LETRA_C = (SELECT SUBSTRING(@COMACENTOS,@QTD,1))
IF @LETRA_C = @LETRA_T
BEGIN
SET @RESULTADO = @RESULTADO + (SELECT SUBSTRING(@SEMACENTOS,@QTD,1))
GOTO INICIO
END
ELSE
BEGIN
IF @QTD = @CONT
SET @RESULTADO =  @RESULTADO + @LETRA_T
END
END
END
RETURN  @RESULTADO
END

Veja Também

SQL Server  – TimeStamp

SQL Server – DATEDIFF

SQL Server – Variáveis Table

SQL Server – nvarchar(max) Limit

SQL Server – Open Transactions Details

Referências

Função SQL que remove acentos de strings.

_____

Não se esqueça de deixar seu comentário, critica, elogio, dúvida e etc. Ele é muito importante para a melhoria do blog.
Do not forget to leave your comments, criticism, praise, questions, etc.. It is very important for improving the blog.

Advertisements

Comments on: "SQL Server – Remover Acentos" (2)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: