我可以同时在select sql查询中使用count(*)和AND吗?

时间:2016-04-08 17:17:47

标签: sql sql-server

 SqlConnection sc = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=D:\6th sem\DNT\tutorials\application\WindowsFormsApplication2\WindowsFormsApplication2\Login.mdf;Integrated Security=True");
sc.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = sc;

//cmd.CommandText = "SELECT count(*) FROM dictionary WHERE word=@Word AND user=@Unique";
cmd.Parameters.AddWithValue("@Word", textBox_word.Text);
cmd.Parameters.AddWithValue("@Unique", frm.textUserName);
cmd.CommandText = "SELECT COUNT(*) FROM dictionary WHERE word=@Word AND user=@Unique";

int z = (int)cmd.ExecuteScalar();
MessageBox.Show(z.ToString());

if (z >= 1)
{
    MessageBox.Show("word already entered in your id");
}
else
{
}

我的代码总是在其他部分,上面的查询输出总是0 !!!

2 个答案:

答案 0 :(得分:0)

您应该使用Profiler来查看传递给参数的内容,但我对这一行非常怀疑:

  cmd.Parameters.AddWithValue("@Unique", frm.textUserName);

您是否希望以.text参数的方式访问textUserName对象的@Word属性?

答案 1 :(得分:-1)

建议1: -
请将 textBox_word.Text frm.textUserName 的值存储在其他值中,然后放在此处。

cmd.Parameters.AddWithValue(“@ Word”,value1); cmd.Parameters.AddWithValue( “@唯一”,值2);

如果还有任何问题,那么 建议2: -

请调试代码并检查value1和value2

的确切值