在T-sql中是否有编码
HTML字符串的功能?我有一个遗留数据库,其中包含诸如’<','>‘的闪避字符我可以写一个函数来替换字符,但是有更好的方法吗?
我有一个ASP.Net应用程序,当它返回一个字符串,它包含导致错误的字符. ASP.Net应用程序正在从数据库表中读取数据.它不会写入表本身.
解决方法
我们有一个遗留系统,使用触发器和dbmail在输入表格时发送HTML编码的电子邮件,因此我们需要在电子邮件生成中进行编码.我注意到,Leo的版本有一个小错误,编码&在&和& gt;我使用这个版本:
CREATE FUNCTION HtmlEncode ( @UnEncoded as varchar(500) ) RETURNS varchar(500) AS BEGIN DECLARE @Encoded as varchar(500) --order is important here. Replace the amp first,then the lt and gt. --otherwise the < will become &lt; SELECT @Encoded = Replace( Replace( Replace(@UnEncoded,'&','&'),'<','<'),'>','>') RETURN @Encoded END GO