protected IDataAdapter GetDataAdapter(string sSQL)
{
IDataAdapter oReturn = null;
switch(this.PROVIDER)
{
case PROVIDER_TYPE.PROVIDER_SQLCLIENT:
oReturn = new SqlDataAdapter(sSQL,(SqlConnection)m_oConnection);
((SqlDataAdapter)oReturn).SelectCommand = (SqlCommand)m_oCommand;
break;
case PROVIDER_TYPE.PROVIDER_OLEDB:
oReturn = new OleDbDataAdapter(sSQL,(OleDbConnection)m_oConnection);
((OleDbDataAdapter)oReturn).SelectCommand = (OleDbCommand)m_oCommand;
break;
case PROVIDER_TYPE.PROVIDER_ODBC:
oReturn = new OdbcDataAdapter(sSQL,(OdbcConnection)m_oConnection);
((OdbcDataAdapter)oReturn).SelectCommand = (OdbcCommand)m_oCommand;
break;
/*case PROVIDER_TYPE.PROVIDER_ORACLE:
oReturn = new OracleDataAdapter(sSQL,(OracleConnection)m_oConnection);
((OracleDataAdapter)oReturn).SelectCommand = (OracleCommand)m_oCommand;
break;*/
case PROVIDER_TYPE.PROVIDER_OTHER:
{
object[] oArgs = new Object[2];
oArgs[0] = sSQL;
oArgs[1] = m_oConnection;
oReturn = (IDbDataAdapter) GetADONETProviderObject(ProviderAssemblyName, ProviderCommandBuilderClassName, oArgs);
break;
}
default:
throw(new Exception("Invalid provider type"));
}
if(oReturn == null)
throw(new Exception("Failed to get ADONET Data Adapter object [IDataAdapter]"));
return oReturn;
}