亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sqlhelper.cs

?? C#數據庫類。
?? CS
?? 第 1 頁 / 共 5 頁
字號:
			{
				return ExecuteNonQueryReturnValue(connection, CommandType.StoredProcedure, spName, outParamName, (SqlParameter[])null);
			}
		}

		/// <summary>
		/// 執行一個帶事務的 存儲過程 或 SQL 命令,返回指定 Output 參數的值
		/// </summary>
		/// <param name="transaction">SqlTransaction</param>
		/// <param name="commandType">CommandType</param>
		/// <param name="commandText">the stored procedure name or T-SQL command</param>
		/// <param name="outParamName">返回參數的名稱</param>
		/// <param name="parameterValues">an array of SqlParamters used to execute the command</param>
		/// <returns>返回參數值</returns>
		public static object ExecuteNonQueryReturnValue(SqlTransaction transaction,CommandType commandType,string commandText, string outParamName, params object[] parameterValues)
		{
			if( transaction == null ) throw new ArgumentNullException( "transaction" );
			
			if( transaction != null && transaction.Connection == null ) throw new ArgumentException( "The transaction was rollbacked or commited, please provide an open transaction.", "transaction" );
			
			if( commandText == null || commandText.Length == 0 ) throw new ArgumentNullException( "commandText" );
			
			if ((parameterValues != null) && (parameterValues.Length > 0)) 
			{
				SqlParameter[] commandParameters = SqlHelperParameterCache.GetSpParameterSet(transaction.Connection, commandText);
				
				AssignParameterValues(commandParameters, parameterValues);

				return ExecuteNonQueryReturnValue(transaction.Connection, commandType, commandText, outParamName, commandParameters);
			}
			else
			{
				return ExecuteNonQueryReturnValue(transaction.Connection, commandType, commandText, outParamName, (SqlParameter[])null);
			}
		}
		#endregion ExecuteNonQueryReturnValue

		#region ExecuteNonQueryReturnArray
		/// <summary>
		/// 執行一個 Sql 命令,返回指定 Output 參數數組
		/// </summary>
		/// <param name="connectionString">數據庫鏈接字符串</param>
		/// <param name="commandType">指定如何解釋命令字符串。(stored procedure, text, etc.)</param>
		/// <param name="commandText">要對數據源執行的 Transact-SQL 語句或存儲過程</param>
		/// <param name="outParamNameList">返回參數的名稱數組</param>
		/// <param name="commandParameters">an array of SqlParamters used to execute the command</param>
		/// <returns>返回參數數組</returns>
		public static object[] ExecuteNonQueryReturnArray(string connectionString, CommandType commandType, string commandText,string[] outParamNameList, params SqlParameter[] commandParameters) 
		{
			if( connectionString == null || connectionString.Length == 0 ) throw new ArgumentNullException( "connectionString" );
			using (SqlConnection connection = new SqlConnection(connectionString))
			{
				connection.Open();
				return ExecuteNonQueryReturnArray(connection,commandType,commandText,outParamNameList,commandParameters);
			}	
		}
		/// <summary>
		/// 執行一個 Sql 命令,返回指定 Output 參數數組
		/// </summary>
		/// <param name="connection">SqlConnection</param>
		/// <param name="commandType">the CommandType (stored procedure, text, etc.)</param>
		/// <param name="commandText">the stored procedure name or T-SQL command</param>
		/// <param name="outParamNameList">返回參數的名稱數組</param>
		/// <param name="commandParameters">an array of SqlParamters used to execute the command</param>
		/// <returns>返回object數組</returns>
		public static object[] ExecuteNonQueryReturnArray(SqlConnection connection, CommandType commandType, string commandText,string[] outParamNameList, params SqlParameter[] commandParameters)
		{
			int returnCount = outParamNameList.Length;
			object[] returnArray = new object[returnCount];
			using (SqlCommand cmd = new SqlCommand())
			{
				bool mustCloseConnection = false;
				PrepareCommand(cmd, connection, null, commandType, commandText, commandParameters, out mustCloseConnection );
				for(int iParam = 0; iParam < returnCount; iParam++)
				{
					string outParamName = outParamNameList[iParam];
					if(!cmd.Parameters.Contains(outParamName))
					{
						throw new ArgumentException ("SqlCommand 不包含此參數 " + outParamName);
					}	
					if(cmd.Parameters[outParamName].Direction == ParameterDirection.Output ||
						cmd.Parameters[outParamName].Direction == ParameterDirection.InputOutput)
					{
						
					}
					else throw new ArgumentException ("參數 " + outParamName + " 不是輸出參數");
				}		
		
				int val = cmd.ExecuteNonQuery();

				for(int iParam = 0; iParam < returnCount; iParam++)
				{
					string outParamName = outParamNameList[iParam];
					returnArray[iParam] = cmd.Parameters [outParamName].Value;
				}

				cmd.Parameters.Clear();
				if( mustCloseConnection )
				{
					connection.Close();
				}
				return returnArray;
			}
		}
				
		/// <summary>
		/// 執行一個 存儲過程 命令,返回指定 Output 參數數組
		/// </summary>
		/// <param name="connectionString">a valid connection string for a SqlConnection</param>
		/// <param name="spName">存儲過程名</param>
		/// <param name="outParamNameList">返回參數的名稱數組</param>
		/// <param name="parameterValues">an array of SqlParamters used to execute the command</param>
		/// <returns>返回object數組</returns>
		public static object[] ExecuteNonQueryReturnArray(string connectionString, string spName, string[] outParamNameList, params object[] parameterValues)
		{
			if( connectionString == null || connectionString.Length == 0 ) throw new ArgumentNullException( "connectionString" );
			if( spName == null || spName.Length == 0 ) throw new ArgumentNullException( "spName" );

			if ((parameterValues != null) && (parameterValues.Length > 0)) 
			{
				SqlParameter[] commandParameters = SqlHelperParameterCache.GetSpParameterSet(connectionString, spName);

				AssignParameterValues(commandParameters, parameterValues);

				return ExecuteNonQueryReturnArray(connectionString, CommandType.StoredProcedure, spName, outParamNameList, commandParameters);
			}
			else 
			{
				return ExecuteNonQueryReturnArray(connectionString, CommandType.StoredProcedure, spName, outParamNameList, (SqlParameter[])null);
			}
		}
		/// <summary>
		/// 執行一個 存儲過程 命令,返回指定 Output 參數數組
		/// </summary>
		/// <param name="connection">SqlConnection</param>
		/// <param name="spName">存儲過程名</param>
		/// <param name="outParamNameList">返回參數的名稱數組</param>
		/// <param name="parameterValues">an array of SqlParamters used to execute the command</param>
		/// <returns>返回object數組</returns>
		public static object[] ExecuteNonQueryReturnArray(SqlConnection connection, string spName, string[]  outParamNameList, params object[] parameterValues)
		{
			if( spName == null || spName.Length == 0 ) throw new ArgumentNullException( "spName" );

			if ((parameterValues != null) && (parameterValues.Length > 0)) 
			{
				SqlParameter[] commandParameters = SqlHelperParameterCache.GetSpParameterSet(connection, spName);

				AssignParameterValues(commandParameters, parameterValues);

				return ExecuteNonQueryReturnArray(connection, CommandType.StoredProcedure, spName, outParamNameList, commandParameters);
			}
			else 
			{
				return ExecuteNonQueryReturnArray(connection, CommandType.StoredProcedure, spName, outParamNameList, (SqlParameter[])null);
			}
		}
		#endregion ExecuteNonQueryReturnArray
		
        #region ExecuteDataset

		/// <summary>
		/// Execute a SqlCommand (that returns a resultset and takes no parameters) against the database specified in 
		/// the connection string. 
		/// </summary>
		/// <remarks>
		/// e.g.:  
		///  DataSet ds = ExecuteDataset(connString, CommandType.StoredProcedure, "GetOrders");
		/// </remarks>
		/// <param name="connectionString">A valid connection string for a SqlConnection</param>
		/// <param name="commandType">The CommandType (stored procedure, text, etc.)</param>
		/// <param name="commandText">The stored procedure name or T-SQL command</param>
		/// <returns>A dataset containing the resultset generated by the command</returns>
		public static DataSet ExecuteDataset(string connectionString, CommandType commandType, string commandText)
		{
			// Pass through the call providing null for the set of SqlParameters
			return ExecuteDataset(connectionString, commandType, commandText, (SqlParameter[])null);
		}

		/// <summary>
		/// Execute a SqlCommand (that returns a resultset) against the database specified in the connection string 
		/// using the provided parameters.
		/// </summary>
		/// <remarks>
		/// e.g.:  
		///  DataSet ds = ExecuteDataset(connString, CommandType.StoredProcedure, "GetOrders", new SqlParameter("@prodid", 24));
		/// </remarks>
		/// <param name="connectionString">A valid connection string for a SqlConnection</param>
		/// <param name="commandType">The CommandType (stored procedure, text, etc.)</param>
		/// <param name="commandText">The stored procedure name or T-SQL command</param>
		/// <param name="commandParameters">An array of SqlParamters used to execute the command</param>
		/// <returns>A dataset containing the resultset generated by the command</returns>
		public static DataSet ExecuteDataset(string connectionString, CommandType commandType, string commandText, params SqlParameter[] commandParameters)
		{
			if( connectionString == null || connectionString.Length == 0 ) throw new ArgumentNullException( "connectionString" );

			// Create & open a SqlConnection, and dispose of it after we are done
			using (SqlConnection connection = new SqlConnection(connectionString))
			{
				connection.Open();

				// Call the overload that takes a connection in place of the connection string
				return ExecuteDataset(connection, commandType, commandText, commandParameters);
			}
		}

		/// <summary>
		/// Execute a stored procedure via a SqlCommand (that returns a resultset) against the database specified in 
		/// the connection string using the provided parameter values.  This method will query the database to discover the parameters for the 
		/// stored procedure (the first time each stored procedure is called), and assign the values based on parameter order.
		/// </summary>
		/// <remarks>
		/// This method provides no access to output parameters or the stored procedure's return value parameter.
		/// 
		/// e.g.:  
		///  DataSet ds = ExecuteDataset(connString, "GetOrders", 24, 36);
		/// </remarks>
		/// <param name="connectionString">A valid connection string for a SqlConnection</param>
		/// <param name="spName">The name of the stored procedure</param>
		/// <param name="parameterValues">An array of objects to be assigned as the input values of the stored procedure</param>
		/// <returns>A dataset containing the resultset generated by the command</returns>
		public static DataSet ExecuteDataset(string connectionString, string spName, params object[] parameterValues)
		{
			if( connectionString == null || connectionString.Length == 0 ) throw new ArgumentNullException( "connectionString" );
			if( spName == null || spName.Length == 0 ) throw new ArgumentNullException( "spName" );
			
			// If we receive parameter values, we need to figure out where they go
			if ((parameterValues != null) && (parameterValues.Length > 0)) 
			{
				// Pull the parameters for this stored procedure from the parameter cache (or discover them & populate the cache)
				SqlParameter[] commandParameters = SqlHelperParameterCache.GetSpParameterSet(connectionString, spName);

				// Assign the provided values to these parameters based on parameter order
				AssignParameterValues(commandParameters, parameterValues);

				// Call the overload that takes an array of SqlParameters
				return ExecuteDataset(connectionString, CommandType.StoredProcedure, spName, commandParameters);
			}
			else 
			{
				// Otherwise we can just call the SP without params
				return ExecuteDataset(connectionString, CommandType.StoredProcedure, spName);
			}
		}

		/// <summary>
		/// Execute a SqlCommand (that returns a resultset and takes no parameters) against the provided SqlConnection. 
		/// </summary>
		/// <remarks>
		/// e.g.:  
		///  DataSet ds = ExecuteDataset(conn, CommandType.StoredProcedure, "GetOrders");
		/// </remarks>
		/// <param name="connection">A valid SqlConnection</param>
		/// <param name="commandType">The CommandType (stored procedure, text, etc.)</param>
		/// <param name="commandText">The stored procedure name or T-SQL command</param>
		/// <returns>A dataset containing the resultset generated by the command</returns>
		public static DataSet ExecuteDataset(SqlConnection connection, CommandType commandType, string commandText)
		{
			// Pass through the call providing null for the set of SqlParameters
			return ExecuteDataset(connection, commandType, commandText, (SqlParameter[])null);
		}
		
		/// <summary>
		/// Execute a SqlCommand (that returns a resultset) against the specified SqlConnection 
		/// using the provided parameters.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内外精品视频| 欧美国产精品一区| 亚洲色图一区二区| av在线播放成人| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 日韩一区二区视频在线观看| 亚洲成人综合网站| 6080yy午夜一二三区久久| 亚洲电影一区二区| 678五月天丁香亚洲综合网| 丝袜诱惑制服诱惑色一区在线观看| 欧美私模裸体表演在线观看| 一区二区三区影院| 日韩欧美一区二区久久婷婷| 日韩激情一二三区| www欧美成人18+| 91在线一区二区三区| 亚洲国产成人va在线观看天堂| 91麻豆精品国产91久久久久久 | 欧美色图12p| 黄网站免费久久| 亚洲欧洲制服丝袜| 欧美一级在线免费| 99精品视频一区二区| 日本不卡一二三区黄网| 国产无人区一区二区三区| 91影院在线免费观看| 婷婷六月综合亚洲| 国产欧美综合色| 欧洲精品一区二区| 国产一区二区三区久久久| 亚洲午夜精品久久久久久久久| 2020国产精品自拍| 欧美精品视频www在线观看| 福利一区二区在线| 日韩国产在线一| 亚洲乱码国产乱码精品精可以看 | 日韩欧美一区二区视频| 91视频观看视频| 国产不卡在线视频| 国产精品一二三四区| 麻豆视频观看网址久久| 亚洲免费观看高清完整版在线观看 | 精品福利av导航| 欧美一区二区三区日韩| 欧美高清精品3d| 欧美精品自拍偷拍| 欧美日韩亚洲不卡| 4hu四虎永久在线影院成人| 欧美日韩一区高清| av成人老司机| 欧美视频一区二区三区在线观看| 91在线视频免费91| 欧美性videosxxxxx| jvid福利写真一区二区三区| av在线播放不卡| 欧美午夜精品免费| 日韩亚洲欧美一区二区三区| 精品成人免费观看| 国产午夜精品久久| 亚洲精品ww久久久久久p站 | 精品国产伦一区二区三区免费| 日韩午夜激情av| 国产欧美一区二区精品久导航| 中文字幕不卡在线观看| 亚洲一区在线看| 久久国产精品免费| 99国内精品久久| 91精品国产麻豆| 中文字幕中文字幕中文字幕亚洲无线| 亚洲人成网站精品片在线观看 | 亚洲超丰满肉感bbw| 国产最新精品免费| 欧美性大战久久久| 精品国产乱码久久久久久久| 国产精品久久综合| 久久精品国产色蜜蜜麻豆| 不卡在线观看av| 日韩一区二区免费电影| 亚洲免费在线视频一区 二区| 麻豆国产精品视频| 欧美日韩视频在线第一区| 欧美成人r级一区二区三区| 亚洲一区二区三区免费视频| 国产精品综合久久| 欧美亚洲综合色| 国产精品另类一区| 国产精品538一区二区在线| 欧美日韩成人在线| 中文字幕制服丝袜成人av| 国内成+人亚洲+欧美+综合在线| 欧美日韩专区在线| 一个色综合网站| 91女人视频在线观看| 1024成人网| 91国内精品野花午夜精品| 国产精品丝袜在线| 99这里只有久久精品视频| 国产日产欧美精品一区二区三区| 狠狠v欧美v日韩v亚洲ⅴ| 日韩三区在线观看| 韩国欧美国产1区| 2024国产精品视频| av中文字幕一区| 亚洲女人****多毛耸耸8| 欧美在线观看禁18| 亚洲一区二区欧美| 555夜色666亚洲国产免| 另类综合日韩欧美亚洲| 国产日韩av一区| 色综合久久久网| 日本欧美一区二区三区乱码| 精品国产一区二区三区av性色 | 亚洲精品国产一区二区精华液| 不卡av在线网| 免费一级欧美片在线观看| 久久蜜桃香蕉精品一区二区三区| av在线一区二区| 久久www免费人成看片高清| 日韩精品一区二区三区四区 | 久久久精品国产免费观看同学| www.在线成人| 日韩成人av影视| 成人免费视频在线观看| 欧美精品 日韩| fc2成人免费人成在线观看播放| 亚洲超碰97人人做人人爱| 国产午夜精品一区二区| 欧美日韩国产影片| av激情综合网| 国产精品一区免费视频| 亚洲aaa精品| 亚洲欧美一区二区久久 | 精品视频1区2区| av中文字幕一区| 成人性生交大片免费看视频在线| 日产国产高清一区二区三区| 日韩美女视频一区| 国产精品免费丝袜| 国产精品沙发午睡系列990531| 6080国产精品一区二区| 欧美天天综合网| 日本道在线观看一区二区| 不卡视频在线看| 色综合中文综合网| 日韩美女视频一区二区在线观看| 欧美日韩中字一区| 欧美日韩精品一区视频| 欧美日韩精品一区二区三区四区| 在线观看国产精品网站| 大美女一区二区三区| 成人av在线资源网站| 91在线视频18| 99精品欧美一区二区三区小说| 色综合欧美在线| 欧美日本一道本| 欧美成人伊人久久综合网| 日韩欧美自拍偷拍| 国产亚洲视频系列| 亚洲欧美精品午睡沙发| 天堂av在线一区| 国产精品一区二区三区网站| 国产呦精品一区二区三区网站| 国产精品99久久久久久有的能看| 国产91高潮流白浆在线麻豆 | 精品久久久久久久久久久久久久久 | 国模套图日韩精品一区二区| 亚洲国产综合在线| 亚洲自拍欧美精品| 丝袜美腿高跟呻吟高潮一区| 免费成人你懂的| 国产一区二区三区高清播放| 成人免费高清在线观看| 日本伦理一区二区| 日韩一级免费观看| 日韩免费高清视频| 国产精品久久久久一区二区三区共 | 成人精品高清在线| 欧美视频一区二区三区四区| 日韩精品专区在线影院观看| 国产精品初高中害羞小美女文| 日本一区二区久久| 亚洲人成亚洲人成在线观看图片| 亚洲美女偷拍久久| 加勒比av一区二区| 日本道免费精品一区二区三区| 日韩一级成人av| 国产精品乱码人人做人人爱| 亚洲综合成人网| 高清beeg欧美| 欧美成人一区二区三区片免费 | 高清不卡一区二区| 欧美一卡二卡三卡四卡| 久久亚洲私人国产精品va媚药| 亚洲精品国产无套在线观| 国产成人在线影院| 日韩精品最新网址| 热久久一区二区| 欧美日本视频在线| 一区二区三区在线免费播放|