gpt4 book ai didi

C# 将mysql中的选择写入变量

转载 作者:行者123 更新时间:2023-11-29 10:53:16 25 4
gpt4 key购买 nike

我在 mysql 中的 select 中保存变量时遇到了大问题。

我编写了以下代码:

string connectionstring = @"****;userid=*****;
password=***;database=***";
cnn = new MySqlConnection(connectionstring);
cnn.Open();
MySqlDataReader reader = null;
string query_date = "SELECT computer_name from wp_users where user_login = @login";
MySqlCommand command2 = new MySqlCommand(query_date, cnn);
command2.Parameters.AddWithValue("@login", metroTextBox.Text);
reader = command2.ExecuteReader();
while (reader.Read())
{
string ColumnName = (string)reader["computer_name"];
}
cnn.Close();

我尝试了很多命令,例如 ExecuteReader 、 ExecuteNonQuery 、 ExecuteScalar 。但它们都不起作用,我遇到了同样的错误: enter image description here

真的不知道这里出了什么问题,我搜索了很多,但没有找到任何形式的解决方案。请帮忙。

编辑 1

我只是按照你写的方式做了,我这样做了:

     string connectionstring = @"****;userid=*****;
password=***;database=***";
cnn = new MySqlConnection(connectionstring);
cnn.Open();
MySqlDataReader reader = null;
string query_date = "SELECT computer_name from wp_users where user_login = @login";
MySqlCommand command2 = new MySqlCommand(query_date, cnn);
command2.Parameters.AddWithValue("@login", metroTextBox.Text);
DataTable table = new DataTable("ResultTable");
MySqlDataAdapter adapter = new MySqlDataAdapter(command2);
adapter.Fill(table);

// This is the important line
string result = table.Rows[0].ToString();

cnn.Close();

与之前的错误相同,但位置不同。这里发生了什么……只是不知道。附加信息的英文意思:该键不在字典中 enter image description here

编辑2

最有趣的是当我尝试用代码更新时:

 string connectionstring = @"****;userid=*****;
password=***;database=***";
cnn = new MySqlConnection(connectionstring);
cnn.Open();
MySqlDataReader reader = null;
string upd = "UPDATE w_users Set computer_name = CURRENT_DATE where user_login = @login";
MySqlCommand command2 = new MySqlCommand(upd, cnn);
command2.Parameters.AddWithValue("@login", metroTextBox.Text);
DataTable table = new DataTable("ResultTable");
SqlDataAdapter adapter = new MySqlDataAdapter(command2);
adapter.Fill(table);
cnn.Close();

这工作正常,没有任何错误,只需更新我的表...有什么意义

编辑3

我尝试使用 ExecuteScalar() 但仍然遇到相同的错误: enter image description here

最佳答案

解决方案很简单:

mysql.data.dll 更新到最新版本修复了该问题 ( https://dev.mysql.com/downloads/connector/net/6.9.html )。

关于C# 将mysql中的选择写入变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43392317/

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