我有一个问题。如何在WinForm中的标签中显示数据库中的数据?
private void button1_Click(object sender, EventArgs e)
{
string connectionString = @"Data Source=.\SQLEXPRESS; AttachDbFilename=C:\Users\John\Documents\Visual Studio 2010\Projects\Shop\Shop\shop.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True";
SqlConnection myDbconnection = new SqlConnection(connectionString);
myDbconnection.Open();
sqlQRY = "Select prix from fleurs where nom='"+flori.SelectedValue+"'";
SqlCommand cmd = new SqlCommand(sqlQRY, myDbconnection);
SqlDataReader reader = cmd.ExecuteReader();
reader.Read();
if (reader.HasRows)
{
label6.Text = 'prix'.ToString();
}
else
{
MessageBox.Show("Error");
}
}
我需要展示" prix"在label6.Text
。
答案 0 :(得分:0)
除非您没有收到任何其他错误。这应该够了
if (reader.HasRows)
{
label6.Text = "prix";
}
如果你想从数据库中读取它并且prix是数据库中列的名称,那么你可以像这样阅读它
label6.Text = reader["prix"].ToString();
答案 1 :(得分:0)
您在代码中输入了语法错误:撇号'用于characters
,而非字符串,例如
Char myChar = 'a';
如果您只想打印" prix",您应该使用引用",例如
if (reader.HasRows)
{
label6.Text = "prix"; // not label6.Text = 'prix'.ToString();
...
在您的情况下,方法ToString()
过度:"prix"
已经是字符串。
如果你想读取名为"prix"
的数据库字段,你应该把它放在
if (reader.HasRows)
{
label6.Text = reader["prix"].toString(); // <- "prix" can't be null
...
答案 2 :(得分:0)
试试这个。 label6.Text = reader["prix"].ToString();
答案 3 :(得分:0)
我在这里做了很多假设。
其中一个是返回一行(因为你有一个标签)
您应该使用ExecuteScalar
建议不要使用DataReader和Command.ExecuteReader来获取数据库中的值
private void button1_Click(object sender, EventArgs e)
{
string connectionString = @"Data Source=.\SQLEXPRESS; AttachDbFilename=C:\Users\John\Documents\Visual Studio 2010\Projects\Shop\Shop\shop.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True";
SqlConnection myDbconnection = new SqlConnection(connectionString);
myDbconnection.Open();
sqlQRY = "Select prix from fleurs where nom='"+flori.SelectedValue+"'";
SqlCommand cmd = new SqlCommand(sqlQRY, myDbconnection);
var value = (String)cmd.ExecuteScalar();
if (!string.IsNullOrEmpty(value))
{
label6.Text = value;
}
else
{
MessageBox.Show("Error");
}
}
答案 4 :(得分:-2)
我们可以使用此声明
label6.Text = "prix";