博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【ADO.NET】7、SQL高级封装
阅读量:5961 次
发布时间:2019-06-19

本文共 2841 字,大约阅读时间需要 9 分钟。

这次是更加简化的进行封装,所有的cmd操作命令都封装到了 Allcmd() 方法里面

别外还有一个别点是 每次执行命令完后,都会垃圾回收, cmd.Parameters.Clear();
是先将执行返回的结果用变量存储,然后在 Clear 掉,然后再将变量值返回出去

public static string str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;        ///         /// 用于查询数据返回 SqlDataReader 类型        ///         /// 连接字符串        /// 操作类型(text/StoredProcedure)        /// 操作命令(存储过程)        /// 参数        /// 
public static SqlDataReader ExecuteReader(string ConnectionStrs,CommandType type,string cmdtext, params SqlParameter[] parameter) { SqlConnection conn = new SqlConnection(ConnectionStrs); SqlCommand cmd = conn.CreateCommand(); Allcmd(conn, cmd, type, cmdtext, parameter); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection); cmd.Parameters.Clear(); return dr; } /// /// 用于更新,删除,插入数据返回int类型 /// /// 连接字符串 /// 操作类型(text/StoredProcedure) /// 操作命令(存储过程) /// 参数 ///
public static int ExecuteNoQuery(string ConnectionStrs, CommandType type, string cmdtext, params SqlParameter[] parameter) { using (SqlConnection conn = new SqlConnection(ConnectionStrs)) { SqlCommand cmd = conn.CreateCommand(); Allcmd(conn, cmd,type, cmdtext, parameter); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; } } /// /// 用于返回首行首列的数据返回object类型 /// /// 连接字符串 /// 操作类型(text/StoredProcedure) /// 操作命令(存储过程) /// 参数 ///
public static object ExecuteScalar(string ConnectionStrs, CommandType type, string cmdtext, params SqlParameter[] parameter) { using (SqlConnection conn = new SqlConnection(ConnectionStrs)) { SqlCommand cmd = conn.CreateCommand(); Allcmd(conn, cmd, type, cmdtext, parameter); object val = cmd.ExecuteScalar(); cmd.Parameters.Clear(); return val; } } /// /// 用于操作全部的连接命令 /// /// 连接对象 /// 命令操作对象 /// 命令操作类型 /// 执行语句 /// 参数对象 private static void Allcmd(SqlConnection conn, SqlCommand cmd, CommandType Type, string cmdText, SqlParameter[] cmdParms) { if (conn.State != ConnectionState.Open) { conn.Open(); } cmd.Connection = conn; cmd.CommandType = Type; cmd.CommandText = cmdText; if (cmdParms != null) { foreach (SqlParameter par in cmdParms) { cmd.Parameters.Add(par); } } }

 

转载于:https://www.cnblogs.com/xgao/p/4135173.html

你可能感兴趣的文章
PostgreSQL数据类型-二进制数据和字符串数据类型与字符串函数
查看>>
安装应用的时候拷贝一个DB文件到应用database下
查看>>
shell 基础
查看>>
twisted的LineReceiver的接口定义
查看>>
浅解用PHP实现MVC
查看>>
MySQL常用操作
查看>>
Yxcms网站管理系统安装
查看>>
字符串,链表,树
查看>>
Nginx错误日志(error_log)配置及信息详解
查看>>
Highcharts 学习笔记
查看>>
高性能python编程之协程
查看>>
PHP编译过程中常见错误信息的解决方法
查看>>
redis服务端及php客户端安装方法
查看>>
定时删除文件
查看>>
mysql主从同步
查看>>
springmvc 高级3 之 统一异常处理
查看>>
我的友情链接
查看>>
memcache安装
查看>>
(总结)Web性能压力测试工具之ApacheBench(ab)详解
查看>>
我的友情链接
查看>>