我使用的是SQL Server 2008和Visual Studio 2010.使用ExecuteNonQuery()
命令时会出现问题。在大多数情况下,它返回受影响的实际行数,但是当我尝试删除一组记录时,它返回0.
当我在SQL Server Management Studio中打开表时,我看到删除了33条记录。
这是我的代码:
sqlQuery = "delete from priv_ where user_id=" + txt_id.Text;
cmd = new SqlCommand(sqlQuery, con);
MessageBox.Show("rows affected = " + cmd.ExecuteNonQuery());
消息框显示
rows affected = 0
当我在SQL Server Management Studio中使用相同的查询时,它会显示
33 rows affected
我已将ONCOUNT
更改为关闭,但没有任何更改。
答案 0 :(得分:0)
我几周都遇到了这个问题。我对数据库使用的登录权限有疑问。我能够运行查询,但不能从我的应用程序运行查询,它不会抛出任何错误。所以我在
下添加了SQL Server 2014中登录的“所有者”权限My_server->安全 - > logins-> My_login->属性 - >用户 Mappings-> My_database->选择适当的权利