ADO连接ACCESS数据库.doc





《ADO连接ACCESS数据库.doc》由会员分享,可在线阅读,更多相关《ADO连接ACCESS数据库.doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、首先在StdAfx.h中加入建立连接:(在xxApp文件中)1 声明变量 2 建立连接(1) AfxOleInit初始化 OLE 为应用程序的支持。BOOL AFXAPI AfxOleInit( );返回值 非零,如果成功;0,如果初始化失败,可能,因为安装该 OLE 系统 DLL 的错误版本。备注 调用此函数初始化 OLE 为 MFC 应用程序的支持。 当调用该函数时时,将发生以下操作: 初始化调用应用程序的当前单元 COM 库。 有关更多信息,请参见 OleInitialize。 创建消息筛选器对象, IMessageFilter 实现接口。 此消息筛选器可捕获与调用 AfxOleGetM
2、essageFilter。 如果 AfxOleInit 从 MFC DLL 调用,则调用将失败。 该失败,因为该函数,假设,则为; 如果从 DLL 调用,该 OLE 系统由调用应用程序之前初始化。 必须初始化 MFC 应用程序设置为单线程单元。 (STA) 如果对您的 InitInstance 重写的 CoInitializeEx ,请指定 COINIT_APARTMENTTHREADED (而不是 COINIT_MULTITHREADED)。AfxOleInit()与CoInitialize(NULL)的区别OLE是建立在COM之上的技术,层次比COM要高。AfxOleInit()调用的是O
3、leInitialize(),而OleInitialize()除了调用CoInitializeEx()来初始化COM库外,还进行一些其它的操作,这些操作对OLE应用来说是必须的,这些OLE应用包括: (1)Clipboard; (2)Drag and drop; (3)Object linking and embedding(现在的OLE,已不再仅仅是Object linking and embedding的概念); (4)In-place activation; 与AfxOleInit()对应的是,AfxOleTerm()。 CoInitialize和CoUninitialize必须成对使用
4、,后者不必。 AfxOleInit()和AfxOleTerm()其实也是需要成对的,但是,在你的程序中,AfxOleTerm()可以不出现,这是因为,MFC已经帮你做好了(有兴趣的话,你可以仔细研究一下CWinThread:m_lpfnOleTermOrFreeLib,而CWinApp是从CWinThread继承的)。(2)CreateInstance_uuidof: 取得和某个标示符相关联的GUID(全球唯一标识符)(3)Open 方法 (ADO Connection)打开到数据源的连接。语法connection.Open ConnectionString,UserID, Password,
5、 Options参数ConnectionString可选,字符串,包含连接信息。参阅ConnectionString 属性可获得有效设置的详细信息。UserID可选,字符串,包含建立连接时所使用用户名。Password可选,字符串,包含建立连接时所使用密码。Options可选,ConnectOptionEnum 值。决定该方法是在连接建立之后(异步)还是连接建立之前(同步)返回。可以是如下某个常量:常量说明adConnectUnspecified(默认)同步打开连接。adAsyncConnect异步打开连接。ConnectComplete 事件可以用于决定连接何时可用。说明使用 Connect
6、ion 对象的 Open 方法可建立到数据源的物理连接。在该方法成功完成后连接是活跃的,可以对它发出命令并且处理结果。使用可选的 ConnectionString 参数指定连接字符串,它包含由分号分隔的一系列 argument = value 语句。ConnectionString属性自动继承用于ConnectionString参数的值,因此可在打开之前设置 Connection 对象的 ConnectionString 属性,或在 Open 方法调用时使用 ConnectionString 参数设置或覆盖当前连接参数。如果在 ConnectionString 参数和可选的 UserID 及
7、Password 参数中传送用户和密码信息,那么UserID 和Password 参数将覆盖 ConnectionString 中指定的值。在对打开的 Connection 的操作结束后,可使用 Close 方法释放所有关联的系统资源。关闭对象并非将它从内存中删除;可以更改它的属性设置并在以后再次使用 Open 方法打开它。要将对象完全从内存中删除,可将对象变量设置为Nothing。远程数据服务用法 当在客户端的 Connection 对象上使用 Open 方法时,在 Connection 对象上打开Recordset 之前 Open 方法其实并未建立到服务器的连接。adModeUnknown
8、 表示目前用ado连接数据库的方式还不知道ad-ADO Mode-方式模式 Unknown-不知道,这种方式以后可以在程序中以表、视图、查询、SQL、过程等方式提取数据。创建记录集(在XXDlg中)1 声明变量 _RecordsetPtr m_pRecordset2 添加记录 (在OnInitDialog中)Recordset.openRecordset 对象的 Open 方法 允许用户向数据库发出请求,通过是运行一个 SQL 命令、启动一个指定的数据表或调用一个指定的 Stored Procedure格式:Recordset.Open Source,ActiveConnection,Curs
9、orType,LockType,Options1、Source 参数可以是一个 Command 名称,一个 SQL 命令、一个指定的数据表名称或一个指定的 Stored Procedure。Recordset 对象可通过 Source 属性连接 Command 对象。 2、ActiveConnection 参数可以是一个 Connction 对象名称或是包含“数据库连接信息( ConnectionString )”的字符串信息。Recordset 对象可通过 ActiveConnection 属性连接 Connection 对象。 3、CursorType 参数表示启动数据的游标类型。常数值说
10、明: AdOpenForwardOnly 0 启动只能向前( Forward-only )的游标,缺省值 AdOpenKeyset 1 启动 Keyset 类型的游标 AdOpenDynamic 2 启动 Dynamic 类型的游标 AdOpenStatic 3 启动 Static 类型的游标 4、LockType 参数表示采用的 Lock 类型。常数值说明:AdLockReadOnly 1 以只读方式启动,无法运行 AddNew、Update、Delete 等方法,缺省值 AdLockPessimistic 2 当数据正在更新时,系统会暂时锁定其它用户的动作,以确保数据一致性 AdLockO
11、ptimistic 3 当数据正在更新时,系统不会暂时锁定其它用户的动作 AdLockBatchOptimistic 4 当数据正在更新时,其它用户必须将 CursorLocation属性设为 adUseBatch ,才能对数据库操作 5、Options 参数表示对数据库请求的类型。常数值说明 :AdCmdUnknown -1 所指定的 CommandText 参数类型无法确定,缺省值 AdCmdText 1 所指定的 CommandText 参数是一般的命令类型 AdCmdTable 2 所指定的 CommandText 参数是一个存在的表名称 AdCmdStoredProc 3 所指定的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ADO 连接 ACCESS 数据库

限制150内