sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cuáles son los pros y los contras de OleDB frente a SQLClient?

OleDb es más genérico. Si alguna vez cambia a un tipo de base de datos diferente en el futuro, es muy probable que tenga un controlador Ole y no tenga que cambiar tanto código.

Por otro lado, se supone que el controlador nativo de Sql Server es más rápido como dijiste, y tiene un mejor soporte de parámetros (los parámetros pueden usar nombres y no tienen estar en orden).

En mi experiencia personal, nunca he notado la diferencia de velocidad; Tampoco pude encontrar nada para respaldar el reclamo. Sospecho que la ventaja de rendimiento es real, pero tendría que procesar millones de registros antes de poder comenzar a medirlo.

Lo que noté que marcó una diferencia significativa fueron los mensajes de error. Estaba teniendo problemas con una aplicación antigua de OleDb y la cambié a SqlClient por desesperación. Por supuesto, todavía no funcionó, pero los mejores mensajes de error proporcionaron suficiente información nueva para solucionar el problema.