Acho que algumas pessoas enxergam o DBA como o “olho que tudo vê“ do SQL, e volta e meia recebo perguntas nada usuais que geralmente começam com “só uma perguntinha, você já fez isso aqui antes...?...”. Hoje me perguntaram se eu já precisei tirar tags HTML de uma string, usando T-SQL. Realmente nunca precisei fazer algo assim e meu instinto inicial de ex-programador me levou a pensar em uma função que faria um loop, identificando os sinais de maior e menor e limpando-os da string. Meu segundo instinto foi “alguém já fez isso antes”.
![]() |
| DBA pronto para tunar um banco de dados |
Ser DBA não necessariamente implica em ser uma força onipresente ou um BUDA tecnológico que tem todas as respostas, mas definitivamente ser DBA envolve saber pesquisar e encontrar as respostas. Depois de uma pesquisa no www.google.com por “remove HTML tags from a string” +”sql server”, encontrei a função abaixo no blog do Pinal Dave, o http://blog.sqlauthority.com. Link para o post original.
CREATE FUNCTION [dbo].[Udf_striphtml] (@HTMLText VARCHAR(MAX))
RETURNS VARCHAR(MAX)
AS
BEGIN
DECLARE @Start INT
DECLARE @End INT
DECLARE @Length INT
SET @Start = Charindex('<', @HTMLText)
SET @End = Charindex('>', @HTMLText, Charindex('<', @HTMLText))
SET @Length = ( @End - @Start ) + 1
WHILE @Start > 0
AND @End > 0
AND @Length > 0
BEGIN
SET @HTMLText = Stuff(@HTMLText, @Start, @Length, '')
SET @Start = Charindex('<', @HTMLText)
SET @End = Charindex('>', @HTMLText, Charindex('<', @HTMLText))
SET @Length = ( @End - @Start ) + 1
END
RETURN Ltrim(Rtrim(@HTMLText))
END
GO
| Função em ação |
Até a próxima!

Nenhum comentário:
Postar um comentário
Leave your comment here!