C#中使用ExecuteReader, ExecuteNonQuery, ExecuteScalar
2013-05-20 17:20
239 查看
ExecuteReader:可以读一个表的记录,只能读不能写
ExecuteNonQuery:可以写也可以读
ExecuteScalar:只能读一条记录,一般用来判断数据库是否有数据等,只能读不能写
ExecuteNonQuery():这个可以让我们在更新数据库时不使用 DataSet 而使用 ExecuteNonQuery 更改数据库中的数据。通过执行 UPDATE、INSERT 或 DELETE SQL语句就 可以达到更改数据库中的数据目的。即使 ExecuteNonQuery 不返回任何行,映射到参数的输 出参数或返回值仍然使用数据填充。但对于 UPDATE、INSERT 和 DELETE SQL语句,返回的 值就是受ExecuteNonQuery()命令影响的行数。对其它类型的语句以及回退来说,返回的值 都是 -1。
ExecuteNonQuery:可以写也可以读
ExecuteScalar:只能读一条记录,一般用来判断数据库是否有数据等,只能读不能写
ExecuteNonQuery():这个可以让我们在更新数据库时不使用 DataSet 而使用 ExecuteNonQuery 更改数据库中的数据。通过执行 UPDATE、INSERT 或 DELETE SQL语句就 可以达到更改数据库中的数据目的。即使 ExecuteNonQuery 不返回任何行,映射到参数的输 出参数或返回值仍然使用数据填充。但对于 UPDATE、INSERT 和 DELETE SQL语句,返回的 值就是受ExecuteNonQuery()命令影响的行数。对其它类型的语句以及回退来说,返回的值 都是 -1。
public int FindId() { var sqlSb = this.LoadConnectionString(); using (var connection = new SqlConnection(sqlSb.ConnectionString)) { connection.Open(); using (var cmmd = new SqlCommand( string.Format("select top 1 ID from