15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


DAO, ODBC, and Shared Memory

Melson Employee -- jwallenf@interaccess.com
Thursday, January 18, 1996

Hello All,

Background:
I have a Database DLL (DB.DLL), wrapping up CDatabase as CMTDatabase and
CRecordSet as CMTRecordSet, which is used by my Business Objects DLL
(Factory.DLL) which is inturn used within the applications.  I would like
there to be only one shared database connection.  I am using VC/MFC 4.0 on
95 and MS SQL Server 4.21 and 6.00.

Problem:
I have having difficulty making one shared database connection.
I have tried using a shared data segment and also a Memory-Mapped File, in
both cases the second instance of the application the m_hdbc is not valid.
Is the ODBC connection handle m_hdbc owned by the process it was started in
or is it a globally maintained value?  Does anyone have any ideas how to
share a single connection between multiple exe's.  

Question:
Does DAO share a single database connection?  How much does DAO differ from
standard ODBC?  I know that DAO uses the Jet Database for ACCESS database,
but also uses ODBC, so is Microsoft recommending companies switch to the DAO
interface instead?  Would there be problems with DAO and Oracle, SQL Server,
or SyBase?

I applogize right now if some of the DAO question are not worded correctly,
I have just started to look into DAO.

Thank you,
Jason Wallenfang
jwallenf@interaccess.com




Darren Martz -- martz%mspo3@mprgate.mpr.ca
Friday, January 19, 1996


I have not (as of yet) done the shared connection, but I do know a bit   
about the next generation of ODBC, and the purpose of DAO. From what I   
understand, Cairo will have a set of interfaces that will replace ODBC   
with an enriched feature set.

I image that there will be something like:
 IDBConnection and IDBStatement
and there will be a series of CLIID's for various drivers whereas the DAO   
engine would also support the IDBConnection and IDBStatement interfaces.   
Confusing? It won't be withing a year... or two...

As for DAO, it *CAN* use ODBC, but my hard-drive can also be used to host   
OS/2 - doesn't mean it's a good idea. From what I know, DAO was designed   
for the smaller applications that use formats like dBase and FoxPro.   
Because it is from Microsoft it defaults to using the JET engine.

The layers of ODBC talking to JET are as follows:
 ODBC
 ODBC Jet Driver
 DAO Interface
 Jet Engine

Whereas the layers of ODBC through DAO are as follows:
 DAO Interface
 ODBC Engine
 ODBC
 ODBC SQLServer Driver
 CTLib

I hope that adds to your understanding :)

Darren
martz@mpr.ca

 ----------
From:  owner-mfc-l[SMTP:owner-mfc-l@netcom.com]
Sent:  Thursday, January 18, 1996 9:42 AM
To:  mfc-l
Subject:  DAO, ODBC, and Shared Memory

Hello All,

Background:
I have a Database DLL (DB.DLL), wrapping up CDatabase as CMTDatabase and
CRecordSet as CMTRecordSet, which is used by my Business Objects DLL
(Factory.DLL) which is inturn used within the applications.  I would like
there to be only one shared database connection.  I am using VC/MFC 4.0   
on
95 and MS SQL Server 4.21 and 6.00.

Problem:
I have having difficulty making one shared database connection.
I have tried using a shared data segment and also a Memory-Mapped File,   
in
both cases the second instance of the application the m_hdbc is not   
valid.
Is the ODBC connection handle m_hdbc owned by the process it was started   
in
or is it a globally maintained value?  Does anyone have any ideas how to
share a single connection between multiple exe's.

Question:
Does DAO share a single database connection?  How much does DAO differ   
from
standard ODBC?  I know that DAO uses the Jet Database for ACCESS   
database,
but also uses ODBC, so is Microsoft recommending companies switch to the   
DAO
interface instead?  Would there be problems with DAO and Oracle, SQL   
Server,
or SyBase?

I applogize right now if some of the DAO question are not worded   
correctly,
I have just started to look into DAO.

Thank you,
Jason Wallenfang
jwallenf@interaccess.com





| Вернуться в корень Архива |