sql >> Databasteknik >  >> RDS >> Sqlserver

Finns det något sätt att göra HTML-avkodning i SQL Server?

Det finns en mycket enklare lösning...

SQL Server stöder XML-datatypen och den stöder avkodning av XML/HTML-kodade enheter. Om du bara castar strängen till XML-datatypen kan du använda den inbyggda avkodningsfunktionen.

Det skulle se ut så här:

select cast('Q & A' as XML).value('.[1]','nvarchar(max)' );

För att göra det till en funktion för enkel användning:

create function dbo.xmlDecode (@string nvarchar(max))
returns varchar(max)
begin
    return cast(@string as XML).value('.[1]','nvarchar(max)' )
end;

Tänk på att i OP:s exempel verkar strängen ha kodats 3 gånger i rad. & förvandlats till & sedan till & och sedan till & . Som ett resultat måste du använda avkodningsfunktionen 3 gånger för att få tillbaka den "original" strängen.



  1. Implementering av Optimistic Locking i Oracle

  2. PHP MySQL - Fel:Ingen databas har valts

  3. Vad är jdbc-drivrutinen org.gjt.mm.mysql.Driver för?

  4. PostgreSQL:UPPDATERING innebär att flytta över partitioner