System.Data.DbType.Decimal);
case "Varchar":
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.String);
case "DateTime":
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.DateTime);
case "Iamge":
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.Binary);
case "Int":
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.Int32);
case "Text":
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.String);
default:
return new System.Data.OleDb.OleDbParameter(ParaName, System.Data.DbType.String);
}
}
#endregion
#region 创建 Connection 和 Command
private IDbConnection GetConnection()
{
switch (this.DbType)
{
case "SqlServer":
return new System.Data.SqlClient.SqlConnection(this.connectionString);
case "Oracle":
return new System.Data.OracleClient.OracleConnection(this.connectionString);
case "Access":
return new System.Data.OleDb.OleDbConnection(this.connectionString);
default:
return new System.Data.SqlClient.SqlConnection(this.connectionString);
}
}
private IDbCommand GetCommand()
{
switch (this.DbType)
{
case "SqlServer":
return new System.Data.SqlClient.SqlCommand();
case "Oracle":
return new System.Data.OracleClient.OracleCommand();
case "Access":
return new System.Data.OleDb.OleDbCommand();
default:
return new System.Data.SqlClient.SqlCommand();
}
}
private IDataAdapter GetAdapater(string Sql, IDbConnection iConn)
{
switch (this.DbType)
{
case "SqlServer":
return new System.Data.SqlClient.SqlDataAdapter(Sql, (SqlConnection)iConn);
case "Oracle":
return new System.Data.OracleClient.OracleDataAdapter(Sql, (OracleConnection)iConn);
case "Access":
return new System.Data.OleDb.OleDbDataAdapter(Sql, (OleDbConnection)iConn);
default:
return new System.Data.SqlClient.SqlDataAdapter(Sql, (SqlConnection)iConn); ;
}
}
private IDataAdapter GetAdapater()
{
switch (this.DbType)
{
case "SqlServer":
return new System.Data.SqlClient.SqlDataAdapter();
case "Oracle":
return new System.Data.OracleClient.OracleDataAdapter();
case "Access":
return new System.Data.OleDb.OleDbDataAdapter();
default:
return new System.Data.SqlClient.SqlDataAdapter();
}
}
private IDataAdapter GetAdapater(IDbCommand iCmd)
{
switch (this.DbType)
{
case "SqlServer":
return new System.Data.SqlClient.SqlDataAdapter((SqlCommand)iCmd);
case "Oracle":
return new System.Data.OracleClient.OracleDataAdapter((OracleCommand)iCmd);
case "Access":
return new System.Data.OleDb.OleDbDataAdapter((OleDbCommand)iCmd);
default:
return new System.Data.SqlClient.SqlDataAdapter((SqlCommand)iCmd);
}
}
#endregion
#region 执行简单SQL语句
/**/
///
/// 执行SQL语句,返回影响的记录数
///
/// SQL语句
/// 影响的记录数
public int ExecuteSql(string SqlString)
{
using (System.Data.IDbConnection iConn = this.GetConnection())
{
using (System.Data.IDbCommand iCmd = GetCommand(SqlString, iConn))
{
iConn.Open();
try
{
int rows = iCmd.ExecuteNonQuery();
return rows;
}
catch (System.Exception E)
{
throw new Exception(E.Message);
}
finally
{
if (iConn.State != ConnectionState.Closed)
{
iConn.Close();
}
}
}
}
}
/**/
///
/// 执行多条SQL语句,实现数据库事务。
///
/// 多条SQL语句
public void ExecuteSqlTran(ArrayList SQLStringList)
{
using (System.Data.IDbConnection iConn = this.GetConnection())
{
iConn.Open();
using (