1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data;
  6. using System.Data.SqlClient;
  7. using System.Configuration;
  8.  
  9. namespace DAL
  10. {
  11. public class SQLHelper
  12. {
  13.  
  14. private SqlConnection conn =null;
  15. private SqlCommand cmd = null;
  16. private SqlDataReader sdr = null;
  17.  
  18. public SQLHelper()
  19. {
  20. string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
  21. conn = new SqlConnection(connStr);
  22. }
  23.  
  24. private SqlConnection GetConn()
  25. {
  26. if (conn.State==ConnectionState.Closed)
  27. {
  28. conn.Open();
  29. }
  30. return conn;
  31. }
  32.  
  33. /// <summary>
  34. /// 执行不带参数的增删改查SQL语句或存储过程
  35. /// </summary>
  36. /// <param name="cmdText">不带参数的增删改查SQL语句或存储过程</param>
  37. /// <param name="ct">命令类型</param>
  38. /// <returns></returns>
  39. public int ExecuteNonQuery(string cmdText,CommandType ct)
  40. {
  41. int res;
  42. using (cmd = new SqlCommand(cmdText, GetConn()))
  43. {
  44. cmd.CommandType = ct;
  45. res = cmd.ExecuteNonQuery();
  46. }
  47. return res;
  48. }
  49.  
  50. /// <summary>
  51. /// 执行带参数的SQL增删改查或存储过程
  52. /// </summary>
  53. /// <param name="cmdText">参数的SQL增删改查或存储过程</param>
  54. /// <param name="paras">参数集合</param>
  55. /// <param name="ct">命令类型</param>
  56. /// <returns></returns>
  57. public int ExecuteNonQuery(string cmdText,SqlParameter[] paras,CommandType ct)
  58. {
  59. int res;
  60. using (cmd = new SqlCommand(cmdText, GetConn()))
  61. {
  62.  
  63. cmd.Parameters.AddRange(paras);
  64. cmd.CommandType = ct;
  65. res = cmd.ExecuteNonQuery();
  66. }
  67. return res;
  68. }
  69.  
  70. /// <summary>
  71. /// 执行带参数的增删改SQL语句或存储过程
  72. /// </summary>
  73. /// <param name="sql">带参数的增删改SQL语句或存储过程</param>
  74. /// <param name="ct">命令类型</param>
  75. /// <returns></returns>
  76. public DataTable ExecuteQuery(string cmdText,CommandType ct)
  77. {
  78. DataTable dt = new DataTable();
  79. cmd = new SqlCommand(cmdText, GetConn());
  80. cmd.CommandType = ct;
  81. using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
  82. {
  83. dt.Load(sdr);
  84. }
  85. return dt;
  86. }
  87.  
  88. /// <summary>
  89. /// 执行带参数的SQL查询语句
  90. /// </summary>
  91. /// <param name="cmdText">带参数的SQL查询语句</param>
  92. /// <param name="paras">参数集合</param>
  93. /// <param name="ct">执行类型</param>
  94. /// <returns>DataTable</returns>
  95. public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras,CommandType ct)
  96. {
  97. DataTable dt = new DataTable();
  98. cmd = new SqlCommand(cmdText, GetConn());
  99. cmd.Parameters.AddRange(paras);
  100. cmd.CommandType = ct;
  101. using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
  102. {
  103. dt.Load(sdr);
  104. }
  105. return dt;
  106. }
  107.  
  108. /// <summary>
  109. /// ExecuteScalar--返回首行首列
  110. /// </summary>
  111. /// <param name="XSqlString">sql语句</param>
  112. /// <returns>返回结果集的首行首列</returns>
  113. public int GetRecordCount(string XSqlString)
  114. {
  115. string SCount;
  116.  
  117. SqlCommand Cmd = new SqlCommand(XSqlString, GetConn());
  118. SCount = Cmd.ExecuteScalar().ToString().Trim(); //返回结果集的首行首列,忽略其它
  119. if (SCount == "")
  120. SCount = "0";
  121.  
  122. return Convert.ToInt32(SCount);
  123. }
  124.  
  125. }
  126. }

  

SqlHelper 增删改查的更多相关文章

  1. sqlHelper做增删改查,SQL注入处理,存储值,cookie,session

    一.存储值 eg:登录一个页面,在进入这个页面之前你怎么知道它登没登录呢?[在登录成功之后我们把状态保存起来] 存储值得方式有两种,一种是cookie,一种是session 1.1区别: 代码: if ...

  2. sqlhelper sqlparameter 实现增删改查

    这是sqlHelper.cs类,类内里封装了方法 using System; using System.Collections.Generic; using System.Linq; using Sy ...

  3. sqlHelper的增删改查

    当一件事情被反复做了多次后.会想找一种办法来取代自己去做这个反复的动作. 敲代码也一样. 在程序中.对于反复的部分.假设是全然同样,那我们就会想着将其写成一个方法(过程.函数),放在一个具有权限的需求 ...

  4. asp.net下利用MVC模式实现Extjs表格增删改查

    在网上看到有很多人写extjs下的表格控件的增删改查,但是大多数都是直接从后台读取数据,很少有跟数据库进行交互的模式. 今天就来写一个这样的例子.欢迎大家交流指正. 首先简单介绍一下MVC模式,MVC ...

  5. ORM 实现数据库表的增删改查

    这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据 ...

  6. ado.net的简单数据库操作(三)——简单增删改查的实际应用

    果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...

  7. ASP.NET学习笔记(3)——用户增删改查(三层)

    说明(2017-10-6 11:21:58): 1. 十一放假在家也没写几行代码,本来还想着利用假期把asp.net看完,结果天天喝酒睡觉,回去的票也没买到,惨.. 2. 断断续续的把用户信息的页面写 ...

  8. BitAdminCore框架应用篇:(二)创建一个简单的增删改查模块

    NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:http://bit.bitdao.cn 框架源码:https://github.com/chenyinxin/cookie ...

  9. 纯Java JDBC连接数据库,且用JDBC实现增删改查的功能

    Java JDBC连接数据库 package cn.cqvie.yjq; import java.sql.*; /** * 注册数据库的驱动程序,并得到数据库的连接对象 * @author yu * ...

随机推荐

  1. wimdows安装mongodb,开机启动

    > d: > cd D:\Program Files\MongoDB\Server\3.0\bin > .\mongod --logpath "D:\Program Fil ...

  2. Linux就该这么学--Shell脚本基本应用

    1.接收用户的参数: Shell脚本为了能够让用户更灵活的完成工作需求,可以在执行命令时传递参数:(命令名 参数1 参数2...) Shell预定义变量: $0 当前执行Shell脚本的程序名 $1- ...

  3. [容易]合并排序数组 II

    题目来源:http://www.lintcode.com/zh-cn/problem/merge-sorted-array/

  4. ul和li 基本用法分析(这里主要想学习怎么用在导航栏中)

    常用作:导航,少量数据表格,居中 一.做导航,居中 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

  5. 【zabbix】zabbix3.0部署手册

    1.环境准备 Centos 6.X 2.数据库准备 默认centos yum源中mysql包的版本号为5.1,为了能使zabbix 3.0能达到最好的性能效果,安装最新版的mysql数据库. yum ...

  6. view上下抖动特效

    shake.xml <?xml version="1.0" encoding="utf-8"?> <translate xmlns:andro ...

  7. mysql父子查询

    https://segmentfault.com/a/1190000007531328

  8. 3D焦点图插件

    在线演示 本地下载

  9. 在VS2015中的SDL2.0开发环境搭建

    写本文的目的在于使用网络上的教程及官方的教程(如:http://www.willusher.io/sdl2%20tutorials/2013/08/15/lesson-0-visual-studio) ...

  10. 自定义编辑框VC,可加载更改字体,添加背景图片,显示输入提示信息

    搞了一天终于弄了个完整的编辑框控件出来了, 哎,,,搞界面开发还是有点复杂的. #pragma once #include "AdvEdit.h" // CBkgEditBox c ...