当我们使用这三种情况时,有什么不同的情况?我应该在哪里使用,在哪里不应该?

推荐答案

  • ExecuteScalar通常在查询返回单个值时使用.如果返回更多,则结果是第一行的第一列.例如SELECT @@IDENTITY AS 'Identity'.
  • ExecuteReader用于具有多行/多列的任何结果集(例如SELECT col1, col2 from sometable).
  • ExecuteNonQuery通常用于没有结果的SQL语句(例如,UPDATE、INSERT等).

Asp.net相关问答推荐

在正则表达式中允许 -(破折号)

SignalR 不在服务器上使用 Session

Window.Open 使用 PDF 流而不是 PDF 位置

获取在 asp.net identity 2.0 中分配了角色的用户列表

如何从网页 (asp.net) 启动 EXE

异步编程与线程有什么不同?

无法让嵌套在 UpdatePanel 中的 WebControl 中的 ScriptManager.RegisterStartupScript 工作

System.Web.HttpContext 无法识别

返回 IHttpActionResult vs IEnumerable vs IQueryable

在 Asp.net mvc5 中使用用户名而不是邮箱作为身份

如何设置asp.net身份cookie过期时间

解析器错误:无法创建类型

Azure Functions 中的 DI

如何从url中删除returnurl?

ASP .NET 单例

ASP.NET MVC 路由的无限 URL 参数

ASP.NET 发布try 复制不存在的文件

如何将列表转换为数据表

ASP.NET - 从静态方法/静态类访问会话?

RegisterStartupScript 不适用于 ScriptManager、Updatepanel.这是为什么?