Ado.net performance question (SQL server vs OleDB
I have a general question. I haven't had an opportunity to benchmark the Sql database provider classes vs. the OleDb database provider classes. My application could be connecting to a SQLServer, Oracle, or an Access database. I have read that there are performance gains using the SQL Server provider classes when communicating with a SQLServer database. My application will only be performing SQL commands such as Update, Insert, and Delete. It will not be using and DataSets or DataReaders. I'm wondering if there is a performance gain using the database specific providers as opposed to the OleDB provider since the application will only be performing commands that do not return data. I assume that the SQL command is passed to the Data provider is then sent to the database where all the real work is done and presumable most of the time is spent. Anyone know if this is an accurate assumption. I would rather use the OleDB providers because it is easier to support the multiple (Oracle, SQLServer, and Access) databases. I know I could create a class factory that created the appropriate kind of database provider and returned the IDbConnection or IDbCommand objects but the exception handling makes the code messy since the exceptions are database specific (SqlException, OleDbException, and OracleException). Each location in the code would require three different exception handlers which isn't very well easy to maintain.
Any comments or suggestions?