在SQL查询中需要转义的字符是什么?

本文关键字:字符 是什么 转义 SQL 查询 | 更新日期: 2023-09-27 17:49:33

插入字符串时需要检查和转义的字符是什么?

INSERT INTO gamedata (gamename, url, dlink) 
VALUES ('mady's run', 'http://www.sdfa.com', 'http://extabit.com/sdf')</code>

如何转义这些字符?
我正在使用c#和SQL Server Management Studio 2008管理数据库。

在SQL查询中需要转义的字符是什么?

不要转义。只是不要在SQL中包含这些值。相反,应该使用参数化SQL并直接为参数提供值。没有转义,没有引用,没有转换-没有SQL注入攻击的风险。

参见SqlCommand.Parameters的文档以获取示例。

您应该将此应用于所有值-而不仅仅是您预期具有"特殊"字符的值。它将代码(SQL)与数据(值)分离,避免了SQL注入攻击,还避免了不必要的转换(如果不小心,这会导致日期/时间值和数字的问题)。