连接相关属性
介绍
初始化或者建立连接在 Windows 编程的许多领域中是一个常见的Pattern 。 如果要在窗口上开始绘制,首先需要通过调用 GetDC 或者 CreateDC 来获取设备上下文,并在完成时关闭 ReleaseDC 或者 DeleteDC 。 如果要使用 Windows 套接字在客户端和服务器之间开始对话,然后先建立连接,完成。 在类似的Pattern 中,如果要查询某些记录,那么需要建立连接,并在完成之后关闭它。 在本文中,我将向你介绍如何使用to开始连接以及如何获取会话以便使用它查询或者编辑数据库。
要使用 OLE DB提供程序初始化到数据库的连接,需要两个ATL类: CDataSource 和 CSession 要使用它们,请包括 atldbcli.h file:
#include atldbcli.h
为什么两个类这是因为你可以在同一个连接上创建多个会话。 使用 Open 或者 OpenFromInitializationString 方法打开数据源之后,你很可能希望启动会话。 通过这里会话,你可以创建事务,查询或者编辑数据库。 实际上,即使你使用的是模式类,也是需要的。 对于 OpenFromInitializationString 方法只有一个重载,而 Open 方法有九个重载。
HRESULT OpenFromInitializationString(LPCOLESTR szInitializationString);
我将解释所有 Open 方法重载,但是大多数情况下需要显示数据链接属性对话框以便用户选择 OLE DB 。
HRESULT Open(HWND hWnd = GetActiveWindow(), DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_WIZARDSHEET);
HRESULT Open(const CLSID clsid, DBPROPSET* pPropSet = NULL, ULONG nPropertySets=1);
HRESULT Open(const CLSID clsid, LPCTSTR pName, LPCTSTR pUserName = NULL, LPCTSTR pPassword = NULL, long nInitMode = 0);
HRESULT Open(LPCSTR szProgID, DBPROPSET* pPropSet = NULL, ULONG nPropertySets=1);
HRESULT Open(LPCWSTR szProgID, LPCTSTR pName, LPCTSTR pUserName = NULL, LPCTSTR pPassword = NULL, long nInitMode = 0);
HRESULT Open(LPCWSTR szProgID, DBPROPSET* pPropSet = NULL, ULONG nPropertySets=1);
HRESULT Open(LPCSTR szProgID, LPCTSTR pName, LPCTSTR pUserName = NULL, LPCTSTR pPassword = NULL, long nInitMode = 0);
HRESULT Open(const CEnumerator enumerator, DBPROPSET* pPropSet = NULL, ULONG nPropertySets=1);
HRESULT Open(const CEnumerator enumerator, LPCTSTR pName, LPCTSTR pUserName = NULL, LPCTSTR pPassword = NULL, long nInitMode = 0);
注意,ATL使用者类基于 COM,这意味着:
在使用这些类之前,我们必须调用 CoInitialize,可能在 InitInstance,然后在稍后的程序中类似地调用 CoUninitialize 。
我们将需要处理 HRESULT 返回值作为成功或者失败的指标。
使用CEnumerator类枚举oledb提供程序
CEnumerator oProviders;
HRESULT hr = oProviders.Open( );
if(SUCCEEDED(hr))
{
// The following macro is to initialize
// the conversion routines
USES_CONVERSION;
while(oProviders.MoveNext( ) == S_OK)
{
// Now you
您可能关注的文档
最近下载
- 2026最新施工资质挂靠协议.docx
- 美好前程-Vencorex.pdf VIP
- 传感器技术及应用中职课件完整全套教学课件.pptx VIP
- 机车动力装置检查与维修课件:16V265H型柴油机配气机构.pptx VIP
- 2026年度江苏财经职业技术学院单招《数学》检测卷AB卷附答案详解.docx VIP
- 《领略丝路遗珍》核心素养教学设计 2026人美版美术八年级下册.pdf
- 材料成形原理-第十章-偏析.ppt
- (2026年春季新版本)人教版三年级数学下册全册教案.docx
- API 682-2014 离心泵和转子泵用轴封系统 第四版(中文).pdf
- IPC-2221C-EN TOC2023印制版设计通用标准 Generic Standard on Printed Board Design.pdf VIP
原创力文档

文档评论(0)