我需要这方面的帮助,当我运行查询并将其放入变量时它返回-1,有人知道为什么吗?
OleDbCommand numberOfHomes = new OleDbCommand("SELECT COUNT(*) FROM HOME", con);
int homes = numberOfHomes.ExecuteNonQuery();
lblNumberOfHomes.Text = homes.ToString();
这是在Visual Studio 2013中完成的
由于
答案 0 :(得分:4)
谁知道为什么?
因为您使用ExecuteNonQuery
进行查询。您想使用ExecuteScalar
。
int homes = (int)numberOfHomes.ExecuteScalar();
来自ExecuteNonQuery-documentation:
对于UPDATE,INSERT和DELETE语句,返回值为 受命令影响的行数。 适用于所有其他类型的 语句,返回值为-1 。