⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sqlstring.cs

📁 办公自动化系统
💻 CS
字号:
using System;
using System.Collections;

namespace MyOA.DataAccessHelper
{
	/// <summary>
	/// SQLString 的摘要说明。
	/// </summary>
	public class SqlStringConstructor
	{
		/// <summary>
		/// 公有静态方法,将文本转换成适合在Sql语句里使用的字符串。
		/// </summary>
		/// <returns>转换后文本</returns>	
		public static String GetQuotedString(String pStr)
		{
			return ("'" + pStr.Replace("'","''") + "'");
		}

		/// <summary>
		/// 根据条件哈希表,构造SQL语句中的AND条件子句
		/// </summary>
		/// <param name="conditionHash">条件哈希表</param>
		/// <returns>AND关系条件子句</returns>
		public static String GetConditionClause(Hashtable queryItems)
		{

			int Count = 0;
			String Where = "";

			//根据哈希表,循环生成条件子句
			foreach(DictionaryEntry item in queryItems)
			{
				if (Count == 0)
					Where = " Where ";
				else
					Where += " And ";

				//根据查询列的数据类型,决定是否加单引号
				if(item.Value.GetType().ToString()=="System.String" || item.Value.GetType().ToString()=="System.DateTime")
				{
					Where +=  item.Key.ToString()  
						+ " Like " 
						+ SqlStringConstructor.GetQuotedString("%"
						+ item.Value.ToString()
						+ "%");
				}
				else
				{
					Where +=  item.Key.ToString() + "= " + item.Value.ToString();
				}
				Count ++;
			}
			return Where;
		}

		/// <summary>
		/// 根据条件哈希表,构造SQL语句中的条件子句
		/// </summary>
		/// <param name="conditionHash">条件哈希表</param>
		/// <param name="type">与还是或查询,取值={"AND","OR"}</param>
		/// <returns>AND关系条件子句</returns>
		public static String GetConditionClause(Hashtable queryItems,string type)
		{

			int Count = 0;
			String Where = "";

			//根据哈希表,循环生成条件子句
			foreach(DictionaryEntry item in queryItems)
			{
				if (Count == 0)
					Where = " Where ";
				else
					Where += " "+type+" ";

				//根据查询列的数据类型,决定是否加单引号
				if(item.Value.GetType().ToString()=="System.String" || item.Value.GetType().ToString()=="System.DateTime")
				{
					Where +=  item.Key.ToString()  
						+ " Like " 
						+ SqlStringConstructor.GetQuotedString("%"
						+ item.Value.ToString()
						+ "%");
				}
				else
				{
					Where +=  item.Key.ToString() + "= " + item.Value.ToString();
				}
				Count ++;
			}
			return Where;
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -