如何使用SQL在VB.net 2010中获取受影响的记录?

如何使用SQL在VB.net 2010中获取受影响的记录?,vb.net,ado.net,Vb.net,Ado.net,我试图得到受影响的记录,但它总是给我-1 这是我的密码: cmd.CommandText = "SELECT * FROM persons" Dim lrd As SqlDataReader = cmd.ExecuteReader() MessageBox.Show(lrd.RecordsAffected) 有什么问题 谢谢。执行SELECT语句时,数据库中没有任何内容受到影响。如果要计算行数,请使用从persons中选择count(*),然后使用ExecuteScalar()而不是Execu

我试图得到受影响的记录,但它总是给我-1

这是我的密码:

cmd.CommandText = "SELECT * FROM persons"
Dim lrd As SqlDataReader = cmd.ExecuteReader()
MessageBox.Show(lrd.RecordsAffected)
有什么问题


谢谢。

执行SELECT语句时,数据库中没有任何内容受到影响。如果要计算行数,请使用
从persons
中选择count(*),然后使用
ExecuteScalar()
而不是
ExecuteReader()
。最后,如果使用INSERT、UPDATE或DELETE确实影响数据库中的某些内容,请使用
ExecuteNonQuery()
,它将返回数据库中受影响的行数。

执行SELECT语句时,数据库中没有任何受影响的内容。如果要计算行数,请使用
从persons
中选择count(*),然后使用
ExecuteScalar()
而不是
ExecuteReader()
。最后,如果您使用INSERT、UPDATE或DELETE确实影响数据库中的某些内容,请使用
ExecuteOnQuery()
,它将返回数据库中受影响的行数。

RecordsAffected属性返回更改/插入/删除的行数;如果没有行受到影响或语句失败,则为0;和-1表示SELECT语句。RecordsAffected属性返回更改/插入/删除的行数;如果没有行受到影响或语句失败,则为0;SELECT语句为-1。