gpt4 book ai didi

c# - MySqlCommand 删除所有参数值

转载 作者:行者123 更新时间:2023-11-30 23:49:17 26 4
gpt4 key购买 nike

我在 C# 中遇到 MySqlParamters 问题。我将在数据库中创建一个新条目,但 MySqlCommand 只写入空值。

    MySqlCommand see = new MySqlCommand("REPLACE INTO users (login, email) VALUES (@login,@email)",this.dbcontext);

MySqlParameter p1 = new MySqlParameter("@login",MySqlDbType.VarChar,20);
p1.Value = "Hello";

MySqlParameter p2 = new MySqlParameter("@email", "Dude");

see.Parameters.Add(p1);
see.Parameters.Add(p2);

Console.WriteLine(p2.Value);

see.ExecuteNonQuery();

我的数据库中的条目是

login   email
------------------
null null

我能做什么?

最佳答案

MySql 连接器不是使用? 作为参数吗? (@ 是用户变量)- 所以:

using(var see = new MySqlCommand(
"REPLACE INTO users (login, email) VALUES (?login,?email)",this.dbcontext))
{
MySqlParameter p1 = new MySqlParameter("login",MySqlDbType.VarChar,20);
p1.Value = "Hello";
MySqlParameter p2 = new MySqlParameter("email", "Dude");
see.Parameters.Add(p1);
see.Parameters.Add(p2);
see.ExecuteNonQuery();
}

或者如果你喜欢一些“小巧”:

this.dbcontext.Execute(
"REPLACE INTO users (login, email) VALUES (?login,?email)",
new { login = "Hello", email = "Dude" }
);

关于c# - MySqlCommand 删除所有参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19999596/

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