2009-10-13 147 views
0

我在SQL Server 2008中有一个表,其中有一列以JavaScript转义格式存储字符串。当从应用程序中查询时,我正在执行返回字符串的JavaScript UnEscape,所以没有问题。SQL Server相当于Javascript UnEscape

当我直接查询数据库时,如何UnEscape字符串? SQL中的UnEscape有没有等效的功能?

+0

这是旧的,但它应该提到:http://sqlblog.com/blogs/peter_debetta/archive/2007/03/09/t-sql-urlencode.aspx http://sqlblog.com/blogs/peter_debetta /archive/2007/03/09/t-sql-urldecode.aspx – Rv3 2012-10-07 08:58:38

回答

1

我在SQL Server 2008中有一个表,其中有一列存储在JavaScript转义格式中的字符串。

这真的不是一个好主意。将未编码的所有文本存储在数据库中以使数据库级别的处理成为可能几乎总是最好的。

在SQL中有什么与JavaScript UnEscape等价的函数吗?

不,在ANSI SQL和包括T-SQL的任何变体中都不是。

escape/unescape是一种仅支持JavaScript的非标准编码格式。它与URL编码不同,并且在后端没有位置。 (如果它在前端有任何地方,那么因为他们发明了encodeURIComponent,它可能不会)。

如果您决定在数据库层中使用此功能,则必须使用存储过程来获取并解码结果。