gpt4 book ai didi

c# - 如何使用来自文本框的输入并在 C# 的 mysql 查询中使用它

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

代码:

string connString = "SERVER=;UID=;PASSWORD=;DATABASE=;";
MySqlConnection connect = new MySqlConnection(connString);
MySqlCommand myCommand = connect.CreateCommand();

string input = textBox4.Text;

myCommand.CommandText = "SELECT * FROM project WHERE Id = @input";
connect.Open();

MySqlDataReader reader = myCommand.ExecuteReader();

if (reader.Read())
textBox1.Text = reader["Name"].ToString();

connect.Close();

我正在尝试使用来自表单文本框 (textBox4) 的数据并将该输入传递给 mysql 查询。

该程序的工作原理是用户输入他们的身份证号码,然后表单将他们的名字输出到另一个文本框 (textBox1)。

当我使用字符串 'input' 或 textBox4.Text 本身时,我收到一条错误消息:“命令执行期间遇到 fatal error 。”

但是,如果我在代码中手动输入正确的 ID 号,它会返回正确的值

对于 C# 和 mysql 的新手,对于任何重大错误,我们深表歉意。

最佳答案

如果是你的情况,我会这样做:

string connString = "SERVER=;UID=;PASSWORD=;DATABASE=;";
MySqlConnection connect = new MySqlConnection(connString);
MySqlCommand myCommand = connect.CreateCommand();
string input = textBox4.Text;

myCommand.CommandText = "SELECT * FROM project WHERE Id = @input";
myCommand.Parameters.Add("@input", SqlDbType.Int).Value = Convert.ToInt32(textBox4.Text);
connect.Open();

MySqlDataReader reader = myCommand.ExecuteReader();

if (reader.Read())
textBox1.Text = reader["Name"].ToString();

connect.Close();

正如你在上面的例子中看到的,我做了两件事:

  1. 使用 SqlParameter 净化输入并且,
  2. 将“@input”的值转换为数字;这是基于您的问题的假设。

祝你好运,请继续学习!

关于c# - 如何使用来自文本框的输入并在 C# 的 mysql 查询中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17241437/

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