在c#中以标签显示数据

本文关键字:显示 数据 标签 | 更新日期: 2023-09-27 17:54:20

我有一个问题。如何显示数据从数据库在标签在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");
    }
}

我需要在label6.Text中显示"prix"

在c#中以标签显示数据

除非你没有得到任何其他错误。这应该足够了

if (reader.HasRows)
{
   label6.Text = "prix";
}

如果你想从数据库中读取它而prix是数据库中的列名那么你可以像这样读取

label6.Text = reader["prix"].ToString();

试试这个。label6.Text = reader["prix"].ToString();

我在这里做了很多假设。

其中之一,是否有一行返回(因为您有一个标签)

你应该使用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");
        }
    }

您在代码中犯了语法错误: 撇号 '用于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 
    ...

我们可以使用这个语句

label6.Text = "prix";