在上一篇文章中已经分析了AdoHelper的部分代码,接下来将继续分析剩余的部分代码,这里分析ExecuteNonQuery方法的实现,代码块1-1:
// <summary>//通过提供的参数,执行无结果集的数据库操作命令// 并返回执行数据库操作所影响的行数。// </summary>// <param name="connectionString">数据库连接字符串</param>// <param name="commandType">执行命令的类型(存储过程或T-SQL,等等)</param>// <param name="commandText">存储过程名称或者T-SQL命令行<</param>// <param name="commandParameters">执行命令所需的参数数组</param>// <returns>返回通过执行命令所影响的行数</returns>public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params IDbDataParameter[] commandParameters){ IDbCommand cmd = DbFactory.CreateDbCommand(); using (IDbConnection conn = DbFactory.CreateDbConnection(connectionString)) { PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; }}//=============================================================================================public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText){ IDbCommand cmd = DbFactory.CreateDbCommand(); using (IDbConnection conn = DbFactory.CreateDbConnection(connectionString)) { PrepareCommand(cmd, conn, null, cmdType, cmdText, null); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; }}//=============================================================================================public static int ExecuteNonQuery(IDbConnection connection, CommandType cmdType, string cmdText, params IDbDataParameter[] commandParameters){ IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val;}//=============================================================================================public static int ExecuteNonQuery(IDbConnection connection, CommandType cmdType, string cmdText){ IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, connection, null, cmdType, cmdText, null); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val;}//=============================================================================================// <summary>//通过提供的参数,执行无结果集返回的数据库操作命令//并返回执行数据库操作所影响的行数。// </summary>// <remarks>// e.g.: // int result = ExecuteNonQuery(connString, CommandType.StoredProcedure, "PublishOrders", new SqlParameter("@prodid", 24));// </remarks>// <param name="trans">sql事务对象</param>// <param name="commandType">执行命令的类型(存储过程或T-SQL,等等)</param>// <param name="commandText">存储过程名称或者T-SQL命令行<</param>// <param name="commandParameters">执行命令所需的参数数组</param>// <returns>返回通过执行命令所影响的行数</returns>public static int ExecuteNonQuery(IDbTransaction trans, CommandType cmdType, string cmdText, params IDbDataParameter[] commandParameters){ IDbConnection conn = null; if (trans == null) { conn = DbFactory.CreateDbConnection(ConnectionString); } else { conn = trans.Connection; } IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, conn, trans, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val;}//=============================================================================================public static int ExecuteNonQuery(IDbTransaction trans, CommandType cmdType, string cmdText){ IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, null); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val;}//=============================================================================================
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库
, 存储过程
, 命令
, 代码
, 分析
, 自己动手写操作系统
, 部分
多数据库操作
,以便于您获取更多的相关知识。
时间: 2024-07-29 02:51:17