ExecuteScalar 方法允许我们查询单一结果,我们来看看什么是单一结果,有那些需要注意的事项
1. 下面是我对 ExecuteScalar 的简单封装,接下来我们看看,如何使用
/// <summary> /// 查询单一结果 /// </summary> /// <param name="sql"></param> /// <param name="pars"></param> /// <returns>object</returns> /// <exception cref="Exception"></exception> public static object ExecuteScalar(string sql, params SqlParameter[] pars) { SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Clear(); if (pars != null) { cmd.Parameters.AddRange(pars); } try { conn.Open(); return cmd.ExecuteScalar(); } catch (Exception ex) { //记录到日志 throw new Exception(ex.Message); } finally { conn.Close(); } }
2. 如何使用: ExecuteScalar 方法 获取单一结果
//根据ProductId去查询匹配到的数据,拿到ProductName值,
string sql = "select ProductName from Products where ProductId=@ProductId";
//不可写成以下sql语句,虽然说不会报错,但是只会返回第一个ProductName的值,
string sql = "select ProductName,ProductId,UnitPrice from Products where ProductId=@ProductId";
3. 如何使用: ExecuteScalar 方法判断是否存在此条数据
// 如果查询到了,就会返回1,没有查询到就是0
string sql = "select count(1) from Products where ProductId=@ProductId";
标签:cmd,ProductName,sql,ADO,NET,ExecuteScalar,conn,ProductId From: https://www.cnblogs.com/tlfe/p/18255941