C# Microsoft Access Connection Pooling

只谈情不闲聊 提交于 2019-12-24 11:33:51

问题


Intro: Using VS 2013, .Net 4 creating a library to connect/use a Microsoft Access database (part of 3rd party application - choice of database is not an option) to be used by our parent product.

Reason to pool: connections being made by multiple tablet PCs located throughout an industrial facility. Concerns regarding performance.

What do I need to add to the connection string, how do I initialize it? When and how do I kill it?

Has anyone dealt with this before?

Why: Answers I have found so far are vaugue


回答1:


For a System.Data.OleDb connection you apparently don't need to do anything to enable connection pooling. According to the MSDN article OLE DB, ODBC, and Oracle Connection Pooling (ADO.NET):

Connection Pooling for OleDb

The .NET Framework Data Provider for OLE DB automatically pools connections using OLE DB session pooling.

For an application using System.Data.Odbc you need to enable connection pooling for the Access ODBC driver by double-clicking the "Microsoft Access Driver ..." name on the "Connection Pooling" tab of the ODBC Administrator control panel (odbcad32.exe) and choosing "Pool Connections to this driver"

As stated in answers and comments to similar earlier questions (like this one), it's not too clear whether connection pooling will offer a significant benefit to an application that uses an Access database, but it is supported (ref: here, item #3) and it does seem to work based on what perfmon.exe displays for the "ODBC Connection Pooling" counters.



来源:https://stackoverflow.com/questions/33157566/c-sharp-microsoft-access-connection-pooling

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!