gpt4 book ai didi

C# 和 MySQL - 字符串替换

转载 作者:行者123 更新时间:2023-11-29 01:30:56 25 4
gpt4 key购买 nike

这主要是我在尝试阅读 C#(我知道 Python、PHP 和 Javascript,但我是 C# 的新手)

也可能是我在这里试图解释的MySQL。

我有这段代码:

 sql_query = "insert into peer_review_info " +
" (review_id, emp_id, comments_positive, comments_negative )" +
" values(?review_id, ?employeeid, ?strength, ?weakness) ";
myCommand = new MySqlCommand(sql_query, connection);
Trace.Write("strength = ", strength );
Trace.Write("areaofimprovement = ", areaofimprovement);
myCommand.Parameters.Add(new MySqlParameter("?review_id", ViewState["review_id"].ToString()));
myCommand.Parameters.Add(new MySqlParameter("?employeeid", ViewState["employeeid"].ToString()));
myCommand.Parameters.Add(new MySqlParameter("?strength", strength));
myCommand.Parameters.Add(new MySqlParameter("?weakness", areaofimprovement));

我想知道 sql_query 值部分中的 ? 是什么意思(这是一种 C# 确定变量的方法,还是我不知道的 MySQL 语法)。

我也想知道我对这部分的理解是否正确 - 它或多或少只是一个 SQL 插入语句,后面是相关变量的定义。我说得对吗?

最佳答案

与 C# 无关,它们只是查询的命名参数。就像您在编写 PHP 时在 PDO/MySQLi 中使用(阅读:应该使用)一样。

另请注意,这不是字符串替换,它是一个准备好的语句,允许将参数传递给它。您可以将准备好的语句更像是一个带有预定义参数的方法调用,而不是将一长串数据(这对潜在注入(inject)开放)直接写入数据库以执行。

关于C# 和 MySQL - 字符串替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12747565/

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