c# - 如何从数据库中取值?必须声明标量变量 "@ID1"

标签 c# database scalar

  public partial class Form3 : Form
  {       
    string var;
    int ID1;

    private void button1_Click(object sender, EventArgs e)
    {
        ID1 = int.Parse(textBox1.Text);
        SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\asp\Desktop\DatabasesPractice\DatabasesPractice\soccer.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
        SqlCommand dataCommand = new SqlCommand("SELECT Name FROM team WHERE ID = @ID1", cn);

        cn.Open();
        var = Convert.ToString(dataCommand.ExecuteScalar());
        label3.Text = var;

    }
 }

它给了我一个错误,说我必须声明标量变量 @ID,我到处搜索,但无法为我的具体情况找到解决方案。

感谢大家的帮助!你的解决方案有效:D

最佳答案

public partial class Form3 : Form 
{        
    string var; 
    int ID1; 

private void button1_Click(object sender, EventArgs e) 
{ 
    ID1 = int.Parse(textBox1.Text); 
    SqlConnection cn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\asp\Desktop\DatabasesPractice\DatabasesPractice\soccer.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"); 
    SqlCommand dataCommand = new SqlCommand("SELECT Name FROM team WHERE ID = @ID1", cn); 
    dataCommand.Parameters.AddWithValue("@ID1", ID1); // this is the new line of code

    cn.Open(); 
    var = Convert.ToString(dataCommand.ExecuteScalar()); 
    label3.Text = var; 

} 

}

见上文,我添加了 dataCommand.Parameters.AddWithValue("@ID1", ID1);。它所做的是为您的 SQL 查询定义您的参数并将值传递给它。我假设您希望变量 ID1 成为您的 SQL 参数 @ID1 的值。

关于c# - 如何从数据库中取值?必须声明标量变量 "@ID1",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8342555/

相关文章:

c# - 您将如何实现 IEnumerator 接口(interface)?

windows - 现代相当于Foxpro、Access等?

PHP子论坛内子论坛的树形遍历

sql-server - 是否有等效于 QlikView 的 AutoNumber() 的 SQL Server 函数?

perl - 我应该如何使用 Perl 的标量范围运算符?

c# - LINQ 按嵌套集合过滤列表

C# If Button IsEnabled,点击触发事件

sql - 如何使用SQL请求在Postgres中克隆没有数据的数据库

c# - 错误 - 必须声明标量变量 - C#

c# - 调试器可以防止挂起吗?