Conversão de HTML para texto em SQL pode ser feito de forma eficiente com uma função definida pelo usuário. Uma função definida pelo usuário aceita parâmetros , executa uma ação, como análise de HTML , e retorna o resultado como um valor. A função pode ser executado a partir de qualquer instrução SQL ou linguagem de programação externa. Coisas que você precisa 
 conhecimento intermediário de T -SQL 
 permissões adequadas para criar um objeto de banco de dados função 
 Show Mais instruções 
 1 
 Ligue para o seu banco de dados, e criar um novo arquivo SQL 
 2 
 Digite o seguinte SQL: . . 
 
 CREATE FUNCTION [dbo] [ CleanHTML ] 
 
 ( 
 
 @ DirtyText varchar ( MAX) 
 
 ) 
 
 RETURNS varchar ( MAX) 
 
 AS 
 
 BEGIN 
 
 DECLARE @ BeginPos int 
 
 DECLARE @ EndPos int 
 
 DECLARE @ Len int 
 
 - Substitua a entidade HTML e com o caractere '&' ( isso precisa ser feito primeiro, como 
 
 - 'e' pode ser o dobro codificado como '& ') 
 
 SET @ BeginPos = CHARINDEX ('& ', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 4 < br > 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , 'e' ) 
 
 SET @ BeginPos = CHARINDEX ('& ', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 
 4 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua a entidade HTML < com o '<' caráter < br > 
 SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText ) 
 
 @ EndPos = @ BeginPos SET + 3 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , '< ; ') 
 
 set @ BeginPos = CHARINDEX ( ' <' , @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 3 
 
 set @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua a entidade HTML> com o caractere ' > ' em 
 SET @ BeginPos = CHARINDEX ( '>' , @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 3 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 E @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , '> ') 
 
 SET @ BeginPos = CHARINDEX ( '>' , @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 3 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua a entidade HTML e com o caractere '&' 
 
 SET @ BeginPos = CHARINDEX ('& ', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 
 4 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , 'e' ) 
 
 SET @ BeginPos = CHARINDEX ('& ', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 4 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua a entidade HTML com o caractere ' ' 
 
 SET @ BeginPos = CHARINDEX ('' , @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 5 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length ' ') 
 
 SET @ BeginPos = CHARINDEX (' ' , @ DirtyText 
 
 BeginPos set @ EndPos = +) 5 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua todas as tags com uma nova linha 
 
 SET @ BeginPos = CHARINDEX ('', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 3 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 while ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length , CHAR ( 13) + CHAR ( 10) ) 
 
 SET @ BeginPos = CHARINDEX ('', @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 3 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua todas as tags 
 com uma nova linha 
 
 SET @ BeginPos = CHARINDEX (' 
 ', @ DirtyText ) 
 
 SET @ EndPos = @ BeginPos + 4 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length : ' CHAR ( 13) + CHAR ( 10) ') 
 
 SET @ BeginPos = CHARINDEX (' 
 ', @ DirtyText ) 
 
 set @ EndPos = @ BeginPos + 4 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Substitua todas as tags 
 com uma nova linha 
 
 SET @ BeginPos = CHARINDEX (' /> 
 
 SET @ EndPos = @ BeginPos + 5 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 WHILE ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length : ' CHAR ( 13) + CHAR ( 10) ') 
 
 SET @ BeginPos = CHARINDEX (' /> 
 
 set @ EndPos = @ BeginPos + 5 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 END 
 
 - Remova qualquer coisa entre as tags  
  set @ BeginPos = CHARINDEX ( ' < ', @ DirtyText ) 
 
 SET @ EndPos = CHARINDEX ( '>' , @ DirtyText , CHARINDEX ( '<' , @ DirtyText ) ) 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 
 
 while ( @ BeginPos > 0 e @ EndPos > 0 e @ Len > , 0) BEGIN 
 
 SET @ DirtyText = STUFF ( @ DirtyText , @ BeginPos , @ Length ,'') 
 
 SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText ) < br > 
 SET @ EndPos = CHARINDEX ( '>' , @ DirtyText , CHARINDEX ( '<' , @ DirtyText ) ) 
 
 SET @ Len = ( @ EndPos - @ BeginPos ) + 1 < br > 
 END 
 
 DEVOLVER LTRIM ( RTRIM ( @ DirtyText ) ) 
 
 END 
 3 
 Compilar a função SQL. 
 < br > 4 
 Executar a função e verificar se ele retorna os resultados desejados. Por exemplo : 
 
 Selecione a partir de dbo.CleanHTML ('  
 teste   ');