gpt4 book ai didi

c# - 我无法将变量从 C# 插入到 MySql 数据库

转载 作者:行者123 更新时间:2023-11-29 19:04:06 25 4
gpt4 key购买 nike

我有一个包含我的产品买家信息的数据库,但我希望它将程序提供的值发送到数据库,如果它为空,我该怎么做?

代码:

我有一个包含我的产品买家信息的数据库,但我希望它将程序提供的值发送到数据库,如果它为空,我该怎么做?

代码:

string comando = "SELECT COUNT(*) FROM tbl_usuario WHERE user=@Usuario AND pw=@Senha AND tipo=1";
var connection = new MySqlConnection(connString);
var cmd = new MySqlCommand(comando, connection);
cmd.Parameters.AddWithValue("@Usuario", usuario);
cmd.Parameters.AddWithValue("@Senha", senha);
var command = connection.CreateCommand();
connection.Open();
MySqlDataReader leitor = cmd.ExecuteReader();
while (leitor.Read())
{
hd_id = leitor["id"].ToString();
}
if (hd_id == null)
{
//Code i need here
}
int retorno = Convert.ToInt32(cmd.ExecuteScalar());
connection.Close();

最佳答案

这个问题在翻译中丢失了很多内容,但是从我想我正在阅读的内容来看,我认为您希望从数据库中检索 ID。但查询只是运行一个 count 命令,其中不包含该命令。

string comando = "SELECT COUNT(*) FROM tbl_usuario WHERE user=@Usuario AND pw=@Senha AND tipo=1";

实际上应该是

string comando = "SELECT id FROM tbl_usuario WHERE user=@Usuario AND pw=@Senha AND tipo=1";

由于您只返回 1 个值(如果没有记录匹配则返回 null),因此您不需要使用读取器;可以直接读取返回值,检查是否为null

var sqlReturn = cmd.ExecuteScalar();
if (sqlReturn == null) { /* Code i need here */ }
else { hd_id = (int)sqlReturn; }

如果我不明白这个问题;请随时告诉我,我们会看看能否帮您解决问题。

关于c# - 我无法将变量从 C# 插入到 MySql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43647039/

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