多数据库访问.pdf
1/*/*2*文 件 名:dbbase.cs 3*Copyright(c)2009-2010 4*文件编号:001 5*创 建 人:晴天水族 6*日期:2009-01-23 7*修 改 人:8*修改日期:9*备注描述:数据工厂类 10*支持 ACCESS,SQL SERVER,ORACLE,SQLite 11*/12 导入的命名空间#region 导入的命名空间 13using System;14using System.Data;15using System.Data.SqlClient;16using System.Data.Common;17using System.Configuration;18using System.Collections;19using System.Text;20using System.Data.SQLite;/添加对 SQLite 数据库的支持 21#endregion 22 23 新建通用的数据库操作命名空间,支持 ACCESS,SQL SERVER,ORACLE,SQLite#region 新建通用的数据库操作命名空间,支持ACCESS,SQL SERVER,ORACLE,SQLite 24namespace dbbase 25 26 27 操作数据库类#region 操作数据库类 28 public class dbbases:IDisposable 29 30 /*/31 /安全类型的集合 32 /33 private static Hashtable parmCache=Hashtable.Synchronized(new Hashtable();34 /*/35 /下面两个是静态变量 36 /37 private static readonly string strs=ConfigurationManager.ConnectionStringsConnLink.ConnectionString;38 private static readonly string pdn=ConfigurationManager.ConnectionStringsConnLink.ProviderName;39 40 /*/41 /属性用于接收数据的存取类型及识别用户所启用的数据库 42 /43 private string providername;44 /*/45 /各种数据库的连接字符串 46 /47 private string connstring;48 49 带参和不带参的构造函数#region 带参和不带参的构造函数 50 /*/51 /默认构造函数,有重载 52 /53 public dbbases()54 55 this.providername=pdn;/使用的数据驱动类,默认 56 this.connstring=strs;/连接数据库的字符串,默认 57 58 59 /*/60 /初始构造函数 61 /62/数据驱动类型SqlClient|Access|Orarl|SQLite 63 /数据库的连接字符串 64 public dbbases(string provider,string links)65 66 this.providername=provider;/使用的数据驱动类 67 this.connstring=links;/连接数据库的字符串 68 69#endregion 70 71 /*/72 /析构函数 73 /74 dbbases()75 76 CloseCon();/热行清理 77 78 79 80 /*/81 /检测当前数据库连接状态 82 /83 /文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1 84 public string isConnstate()85 86 if(cmd!=null)87 88 return cmd.Connection.State.ToString();89 90 return 变量已清除;91 92 93 isclose属性,默认 0 指进行清理,1 为不进行清理,可以用于多次循环之中,避免多次开关数据库#region isclose属性,默认 0 指进行清理,1 为不进行清理,可以用于多次循环之中,避免多次开关数据库 94 /*/95 /是否进行各项数据库连接器的清理工作 96 /97 /98 private int isclose=0;99 public int IsClose 100 101 get 102 103 return isclose;104 105 set 106 107 isclose=value;108 109 110#endregion 111 112 分页记录反回变量#region 分页记录反回变量 113 private int allpage=0;/*/分页函数中记录共有多少页的变量114 public int Allpage 115 116 get return allpage;117 118 119 private int allrecord=0;/*/分页函数中记录菜有数据总量的变量120 public int Allrecord 121 122 get return allrecord;123 124#endregion 125 文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1126 数据库操作对像的属性Adapter|Command|Begintransaction#region 数据库操作对像的属性Adapter|Command|Begintransaction 127 /*/128 /属性 DbDataAdapter 129 /130 private DbDataAdapter adp;131 132 /*/133 /属性 SqlCommand 134 /135 private DbCommand cmd;136 137 /*/138 /事务139 /140 private DbTransaction Tran;141#endregion 142 143 CloseCon()关闭相关的数据库连接#region CloseCon()关闭相关的数据库连接 144 /*/145 /关闭数据库连接146 /147 public void CloseCon()148 149 if(cmd!=null)150 151 if(cmd.Connection.State!=ConnectionState.Closed)152 153 cmd.Connection.Close();154 155 cmd.Dispose();156 cmd=null;157 158 159 if(adp!=null)160 161 adp.Dispose();162 adp=null;163 164 165 if(Tran!=null)166 167 Tran.Dispose();文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1168 Tran=null;169 170 171 /GC.Collect();/强制对所有代进行垃圾回收172 173#endregion 174 175 getFace()创建工厂对像#region getFace()创建工厂对像 176 /*/177 /创建工厂对像178 /179 /DbProviderFactory 180 public DbProviderFactory getFace()181 182 DbProviderFactory fact=null;183 if(providername=System.Data.SQLite)184 185 fact=SQLiteFactory.Instance;/SQLite数据库创建数据工厂类186 187 else 188 189 fact=DbProviderFactories.GetFactory(providername);/获得当前所调定的数据源存取类型190 191 return fact;192 193#endregion 194 195 创建 CMD 对像,以供其它对像使用#region 创建 CMD 对像,以供其它对像使用 196 /*/197 /创建 CMD 对像198 /199 /DbComand对像实例 200 private DbCommand CreateDbCommand()201 202 DbProviderFactory fact=getFace();/工厂对像203 DbConnection conn=fact.CreateConnection();/创建 Connection对像204 conn.ConnectionString=connstring;/设定 Connection对像的连接字符串205 cmd=conn.CreateCommand();/使用 conn 的函数CreateCommand()创建 Command 对像文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1206 return cmd;/返回 Command 对像207 208#endregion 209 210 RemoveParames清除CMD的参数及存储过程的参数缓存#region RemoveParames清除 CMD 的参数及存储过程的参数缓存 211 /*/212 /清除参数213 /214 /DbCommand的对像 215 private void RemoveParams(DbCommand cmd)216 217 while(cmd.Parameters.Count 0)218 219 cmd.Parameters.RemoveAt(0);220 221 222 223 /*/224 /从缓存中初使化SQL或存储过程的参数225 /226 /Command对像 227 /布尔值 228 public bool initParametersFromCache(DbCommand cmd)229 230 DbParameter parms=GetCachedParameters(string.Format(01,cmd.Connection.ConnectionString,cmd.CommandText);231 if(parms=null)232 return false;233 for(int i=0;i parms.Length;i+)234 235 cmd.Parameters.Add(parms);236 237 return true;238 239 240 public static void CacheParameters(string cacheKey,params DbParameter cmdParms)241 242 parmCachecacheKey=cmdParms;243 244 245 /*/246 /查找缓存中的变量文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1文档编码:CK2O9E1P6J9 HA6B7X8S10B5 ZA9S4C10U7B1247 /248 /缓存名称 249 /DbParameter 250 public DbParameter GetCachedParameters(string cacheKey)251 252 DbParameter cachedParms=(DbParameter)parmCachecacheKey;/parmCache 本程序第18 行,安全类型的HASHtable 253 254 if(cachedParms=null)255 return null;256 257 DbParameter clonedParms=new DbParametercachedParms.Length;258 259 for(int i=0,j=cachedParms.Length;i j;i+)260 261 clonedParms=(DbParameter)(ICloneable)cachedParms).Clone();262 263 264 return clonedPar