0

我已经看到了一些如何使用参数来避免字符转义的示例。使用参数对 SQL 注入是否 100% 安全?

另外,您能否提供一些基本查询(经常使用),以及您如何实现参数?

我来这里之前搜索的一些网站提供了过于复杂的示例。

4

2 回答 2

2

参数化 SQL 查询的基本示例如下:

SqlCommand command = new SqlCommand(@"select city from users where username = @username", conn);
SqlParameter param = new SqlParameter();
param.ParameterName = "@username";
param.Value = "abc123"
command.Parameters.Add(param);

conn是您建立的 SqlConnection。

@username是执行命令时将被替换的参数名称。

abc123是我为示例添加的用户名。

这显然是一个虚构的场景,但你明白了。

于 2012-04-22T17:06:36.587 回答
0

作为较短的版本,您可以使用

SqlCommand command = new SqlCommand(@"select city from users where username = @username", conn);
command.Parameters.AddWithValue("@username", "value");
于 2012-04-22T17:19:21.247 回答