封装一个受影响的行

  public static int ExcuteNonQuery(string sqlText,params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
{
using (SqlCommand cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters);//把参数添加到cmd命令中。
return cmd.ExecuteNonQuery();
}
}
}

执行sql。返回 查询结果中的 第一行第一列的值

   #region 执行sql。返回 查询结果中的 第一行第一列的值

         public static object ExcuteScalar(string sqlText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
{
using (SqlCommand cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteScalar();
}
}
} public static T ExcuteScalar<T>(string sqlText, params SqlParameter[] parameters)
//where T:UserInfo要求必须继承某个类型
//where T:class //必须是类
//where T:new () //要求T必须有默认构造函数 //where 可以现在T类型,必须是class,必须有构造函数,必须继承或者实现某个类或者接口。
{
using (SqlConnection conn = new SqlConnection(GetSqlConnectionString()))
{
using (SqlCommand cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters);
return (T)cmd.ExecuteScalar();
//int? i = 0;
//object num = i;
//i = num as int?;
}
}
}
#endregion

执行sql 返回一个DataTable

   public static DataTable ExcuteDataTable(string sqlText, params SqlParameter[] parameters)
{
using (SqlDataAdapter adapter = new SqlDataAdapter(sqlText, GetSqlConnectionString()))
{
DataTable dt =new DataTable();
adapter.SelectCommand.Parameters.AddRange(parameters);
adapter.Fill(dt);
return dt;
}
}

执行sql 脚本,返回一个SqlDataReader

   public static SqlDataReader ExucteReader(string sqlText, params SqlParameter[] parameters)
{
//SqlDataReader要求,它读取数据的时候,它哟啊独占 它的SqlConnection对象,而且SqlConnection必须是Open状态。
SqlConnection conn =new SqlConnection(GetSqlConnectionString());//不要释放连接,因为后面还要需要连接打开状态。
SqlCommand cmd = conn.CreateCommand();
conn.Open();
cmd.CommandText = sqlText;
cmd.Parameters.AddRange(parameters);
//CommandBehavior.CloseConnection:代表,当SqlDataReader释放的时候,顺便把SqlConnection对象也释放掉。
return cmd.ExecuteReader(CommandBehavior.CloseConnection);

另外还赋这片也是可以参考,上文是根据EF来判断的 http://www.cnblogs.com/lishuangzhe/archive/2013/08/26/SqlHelper.html

最新文章

  1. php 字符串式非关联数组循环
  2. pl/sql tutorial
  3. CROW-5 WEB APP引擎商业计划书(HTML5方向)-微信网页版微信公众平台登录-水仙谷
  4. sed删除空行和注释行
  5. jquery中read与js中onload区别
  6. web前端知识体系小结(转)
  7. 用JSP+JavaBean开发模式实现一个销售额的查询
  8. bullet_01
  9. 设备树的interrupt
  10. JS查找字符串中出现次数最多的字符
  11. 使用 dep 配置 golang 开发环境
  12. checkbox选中并通过ajax传数组到后台接收
  13. [日常工作]Oracle12cr2在日常工作中遇到的不兼容的问题
  14. C++语言------顺序表实现,用动态数组的方法
  15. vue 使用element-ui upload文件上传之后怎么清空
  16. 一款基于jquery滑动后固定于顶部的导航
  17. 初涉RxAndroid结合Glide实现多图片载入操作
  18. [linux]文件系统损坏,linux启动时 checking filesystems fail
  19. ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv opti on so it cannot exe
  20. mac下csv乱码解决办法

热门文章

  1. Seal Report_20160923
  2. poj3709 K-Anonymous Sequence[贪心+斜率优化dp]
  3. Money Systems
  4. Codeforces 762D Maximum path 动态规划
  5. 【LeetCode】047. Permutations II
  6. 简单两步快速实现shiro的配置和使用,包含登录验证、角色验证、权限验证以及shiro登录注销流程(基于spring的方式,使用maven构建)
  7. uC/OS-II源码分析(三)
  8. BZOJ3165:[HEOI2013]Segment
  9. The Review Plan I-禁位排列和容斥原理
  10. wpf如何获取control template里的元素