gpt4 book ai didi

c# - 如何使用 C# 从 SQL 数据库获取值到文本框?

转载 作者:行者123 更新时间:2023-11-30 19:10:38 25 4
gpt4 key购买 nike

我正在创建一个预订管理系统,但在尝试从 SQL 数据库获取数据并将其插入到我的应用程序的一组文本框中时遇到了问题。

我想在 DataGridView 中单击按钮时显示客户详细信息,但是当我单击该按钮时,应用程序会抛出异常并显示以下错误消息;

Invalid attempt to read when no data is present.

我附上了 screenshot我想查看客户详细信息的屏幕,以及按钮的代码,最终将在相应的文本框中显示客户详细信息。任何帮助将不胜感激!

    SqlConnection sc = new SqlConnection("Data Source=localhost;Initial Catalog=LoginScreen;Integrated Security=True");
SqlCommand com = new SqlCommand();
com.Connection = sc;
sc.Open();
SqlDataReader read = (null);
com.CommandText = ("select * from Pending_Tasks");
read = com.ExecuteReader();
CustID.Text = (read["Customer_ID"].ToString());
CustName.Text = (read["Customer_Name"].ToString());
Add1.Text = (read["Address_1"].ToString());
Add2.Text = (read["Address_2"].ToString());
PostBox.Text = (read["Postcode"].ToString());
PassBox.Text = (read["Password"].ToString());
DatBox.Text = (read["Data_Important"].ToString());
LanNumb.Text = (read["Landline"].ToString());
MobNumber.Text = (read["Mobile"].ToString());
FaultRep.Text = (read["Fault_Report"].ToString());
sc.Close();

最佳答案

您的代码中缺少 reader.Read() 行。你应该添加它。它是实际从数据库中读取数据的函数:

string conString = "Data Source=localhost;Initial Catalog=LoginScreen;Integrated Security=True";
SqlConnection con = new SqlConnection(conString);

string selectSql = "select * from Pending_Tasks";
SqlCommand com = new SqlCommand(selectSql, con);

try
{
con.Open();

using (SqlDataReader read = cmd.ExecuteReader())
{
while(reader.Read())
{
CustID.Text = (read["Customer_ID"].ToString());
CustName.Text = (read["Customer_Name"].ToString());
Add1.Text = (read["Address_1"].ToString());
Add2.Text = (read["Address_2"].ToString());
PostBox.Text = (read["Postcode"].ToString());
PassBox.Text = (read["Password"].ToString());
DatBox.Text = (read["Data_Important"].ToString());
LanNumb.Text = (read["Landline"].ToString());
MobNumber.Text = (read["Mobile"].ToString());
FaultRep.Text = (read["Fault_Report"].ToString());
}
}
}
finally
{
con.Close();
}

编辑:假设您要将最后一条记录写入文本框,此代码可以正常工作。如果您想应用不同的场景,例如从数据库中读取所有记录并在单击 Next 按钮时更改文本框中的数据,您应该创建并使用自己的模型,或者您可以将数据存储在 DataTable 中,并在以后根据需要引用它们。

关于c# - 如何使用 C# 从 SQL 数据库获取值到文本框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16565035/

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