gpt4 book ai didi

c# - 在 .NET 中添加斜杠/转义单引号

转载 作者:太空宇宙 更新时间:2023-11-03 17:15:52 24 4
gpt4 key购买 nike

我正在维护一段连接 SQL 查询的代码,例如:

string sql = "SELECT* FROM table WHERE column = '" + value + "'";

现在事实证明,如果 value 包含 ' 字符,它将破坏 SQL Server 文本语句。我搜索了一些类似于 PHP addslashes 的方法,但没有成功。有 Regex.Escape 但它没用。除了在字符串上调用 Replace 方法外,还有其他方法可以解决该问题吗?

string sql = "SELECT* FROM table WHERE column = '" + value.Replace("'", "''") + "'";

谢谢,帕维尔

最佳答案

你应该使用 SqlCommandSqlParameter而不是像现在这样构建查询。正如其他人所说,您正在做的事情让您很容易受到注入(inject)攻击。

如果您不能这样做,那么正如您所说,替换是一个不错的选择。

关于c# - 在 .NET 中添加斜杠/转义单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5899358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com