我正在使用MySql。我有一个DataReader
,我正在执行一个SQL查询,而且我得到了这个结果(这是我的自定义输出):
[CommandText:SELECT username,email FROM account;] [Type:Reader] [IsAlive:True] [IsExecucuted:True] [IsSucceeded:True] [例外:] [AffectedRows:0] [标量:错误] [读者:真] [记录受影响:-1]
正如您所看到的,sql查询/命令是" SELECT用户名,电子邮件FROM帐户;"但删除?我查了一下,表中没有变化。它是什么?
编辑1:另请参阅MSDN:https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.recordsaffected(v=vs.110).aspx
编辑2: "获取通过执行Transact-SQL语句更改,插入或删除的行数。"
所以没有改变,插入或删除?
答案 0 :(得分:0)
是的,
没有任何改动,插入或删除
在SELECT
命令期间,由于您没有更改任何内容,只需从表中读取数据。
为什么要删除某些内容?
值等于-1
的原因是,在某些更改(例如UPDATE
或DELETE
期间,此参数将从0更改为受影响的数量行,但在选择期间,它等于某个NOT SET
值,该值不应等于0
之类的有效值。