C# 将sql查询结果传递给变量
我刚刚开始学习C#,这是我第一次请求帮助 我已经写了一个登录脚本,它有通常的“用户名”和“密码”字段以及提交按钮 脚本查询MySQL数据表,如果用户名和密码匹配,则关闭登录窗口并打开详细信息窗口 我试图做的是使用查询中的两个字段,并将内容传递到detail窗口进行显示。这是迄今为止的代码:C# 将sql查询结果传递给变量,c#,C#,我刚刚开始学习C#,这是我第一次请求帮助 我已经写了一个登录脚本,它有通常的“用户名”和“密码”字段以及提交按钮 脚本查询MySQL数据表,如果用户名和密码匹配,则关闭登录窗口并打开详细信息窗口 我试图做的是使用查询中的两个字段,并将内容传递到detail窗口进行显示。这是迄今为止的代码: MySqlCommand SelectCommand = new MySqlCommand( "SELECT clientID, login, pass, name_f, name_l FROM FIDS_
MySqlCommand SelectCommand = new MySqlCommand(
"SELECT clientID, login, pass, name_f,
name_l FROM FIDS_members WHERE login = '" +
this.username_txt.Text + "' AND pass = '" +
this.pass_txt.Text + "';", myConn);
MySqlDataReader myReader;
myConn.Open();
myReader = SelectCommand.ExecuteReader();
int count = 0;
while (myReader.Read())
{
count = count + 1;
}
if (count == 1)
{
string name_f = myReader.GetString("name_f").ToString();
name_f_txt = name_f;
this.Hide();
Welcome f2 = new Welcome(name_f.Text);
f2.ShowDialog();
}
else
MessageBox.Show("The username or password are incorrect, please try again...");
// Clear login feilds
username_txt.Text = String.Empty;
pass_txt.Text = String.Empty;
我得到的错误是:
字符串不包含“文本”的定义
我知道我可能没有正确地执行此操作,但如果有人能提供一些指针,这将非常有帮助。错误可能是因为这一行
Welcome f2 = new Welcome(name_f.Text);
换成
Welcome f2 = new Welcome(name_f);
name\u f
是一个符合您的代码的字符串,似乎您正在将其用作文本框您应该适当地使用new Welcome(name\u f)
而不是name\u f.Text,因为name\u f是一个字符串而不是一个文本框。如果这没有帮助,请同时提供发生错误的行号。同时开始查找MySqlParameter
您可能还想重新了解命名约定。name\f vs name\u f\u txt vs pass\u txt等。您好,“name\u f”“没有设置为文本框,我只是想让它保存查询字段的结果。如果我进行更改并删除“.Text”,则会出现以下错误:“name\u f\u txt”名称在当前文件中不存在context@DCJones:这意味着未定义name\u f\u txt
,您确定这是名称吗?如果name\u f\u txt
是一个文本框,则需要执行name\u f\u txt.Text=name\u f代码>但首先您需要解决“未定义”问题。我已解决错误消息,但当第二个窗口打开我用于显示“name-f”var show“System”内容的标签时。在第二个窗口中,我使用以下内容显示var“name_f”内容:public Welcome(字符串name_f_txt){InitializeComponent();label5.Text=name_f_txt;