如何用数据库中的值设置标签文本?
本文关键字:设置 标签 文本 何用 数据库 | 更新日期: 2023-09-27 18:06:14
我在我的数据库中有一个列"Klantnummer"和
我想把这个值作为标签文本
我怎么做呢?
protected string conS = "Data Source=.''SQLEXPRESS;AttachDbFilename=|DataDirectory|''Databees.mdf;Integrated Security=True;User Instance=True";
protected SqlConnection con;
protected void Page_Load(object sender, EventArgs e)
{
con = new SqlConnection(conS);
try
{
con.Open();
string q = "SELECT * FROM tblKLanten;";
SqlCommand query = new SqlCommand(q, con);
SqlDataReader dr = query.ExecuteReader();
Label1.Text = ; //I want here the value of klantnummer
con.Close();
}
catch (Exception ex)
{
Label2.Text = "Error";
}
}
可以使用:
label1.Text = dr["Klantnummes"].ToString();
根据提供的信息,回答这个问题并不容易,但是让我们假设您的结构是这样的:
CREATE TABLE tblKLanten (
ID INT,
Klantnummer VARCHAR(50)
)
您需要通过阅读器的索引获取字段,像这样:
Label1.Text = dr.GetString(1);
但是你还需要读取,所以你需要在设置标签之前发出这个语句:
bool success = dr.Read();
if (success)
{
// set the label in here
}
,但请记住,它是基于返回语句中列的索引,因此,由于您正在发布SELECT *
,因此我无法知道索引是什么。最后,我建议进行更多的更改,因此考虑以下代码:
protected string conS = "Data Source=.''SQLEXPRESS;AttachDbFilename=|DataDirectory|''Databees.mdf;Integrated Security=True;User Instance=True";
protected SqlConnection con;
protected void Page_Load(object sender, EventArgs e)
{
con = new SqlConnection(conS);
try
{
con.Open();
string q = "SELECT * FROM tblKLanten;";
SqlCommand query = new SqlCommand(q, con);
using (SqlDataReader dr = query.ExecuteReader())
{
bool success = dr.Read();
if (success)
{
Label1.Text = dr.GetString(1);
}
}
con.Close();
}
catch (Exception ex)
{
Label2.Text = "Error";
}
}
那里的using
语句将确保SqlDataReader
得到适当的处置