DVD出租系统【3】MFC界面连接数据库

2024-02-17 06:48

本文主要是介绍DVD出租系统【3】MFC界面连接数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DVD出租系统【3】界面连接数据库


数据库是sql server 2008:

1、初始化COM库:
ADO是基于COM技术的,所以,在应用程序调用ADO前,必须初始化COM库环境。
ADO使用结束后,还需要关闭库,释放初始化加载的动态库,MFC程序中,一般在 CXXXAPP 的 InitInstance 的
函数中调用 COM 库的初始化函数 CoInitialize(NULL); 在 ExitInstance 的函数中调用卸载 COM 库的函数:CoUninitialize();


2、、引入 ADO 动态链接库:
在使用 vc++ 的 MFC 编程开发时,MFC 并没有提供对 ADO 封装类的支持,能够支持 ADO 编程的是 ADO 的 COM动态库 msado*.dll
一般在系统盘的:\Program Files\Common Files\System\ado 目录下,根据操作系统版本的不同,该文件可能是:msado15.dll,
* 代表 ADO 库的版本,在 stdafx.h 头文件中添加如下代码:
#import "C:/Program Files/Common Files/System/ado/msado15.dll" no_namespace rename("EOF", "adoEof")

3、在头文件中添加代码:

_ConnectionPtr m_pConnection;BOOL connectDB();void CloseDB();virtual void OnCancel();

4、接下来增加数据库连接代码,数据库关闭代码:(onCancel是函数重载出来的)

BOOL CDVDRentDlg::connectDB()
{HRESULT hr;try{hr = m_pConnection.CreateInstance(__uuidof(Connection));if (SUCCEEDED(hr)) {//_bstr_t connectStr = _T("Provider=SQLNCLI;Server=192.168.0.100;Database=DVDRentDB;Uid=cctry;Pwd=www.cctry.com");_bstr_t connectStr = _T("Provider=sqloledb;Data Source=192.168.1.23;Initial Catalog=DVDRentDB;User Id=sa;Password=123456");m_pConnection->ConnectionTimeout = 20;hr = m_pConnection->Open(connectStr, _T(""), _T(""), adConnectUnspecified);if (FAILED(hr)) {MessageBox(_T("打开与数据库的连接失败."));return FALSE;}}else {MessageBox(_T("实例化 Connection 对象失败."));return FALSE;}}catch (_com_error &e){_bstr_t bstrSource(e.Source());_bstr_t bstrDescription(e.Description());MessageBox(bstrDescription, bstrSource);return  FALSE;}return TRUE;
}
void CDVDRentDlg::CloseDB()
{if (m_pConnection && m_pConnection->State == adStateOpen) {m_pConnection->Close();}
}void CDVDRentDlg::OnCancel()
{// TODO: 在此添加专用代码和/或调用基类CloseDB();CDialogEx::OnCancel();
}

5、运行效果图如下:

本节工程地址:

链接:https://pan.baidu.com/s/1PYaRk-vXiB2hBhTsj4f9CQ 
提取码:ncqx 

这篇关于DVD出租系统【3】MFC界面连接数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/716984

相关文章

Jmeter如何向数据库批量插入数据

《Jmeter如何向数据库批量插入数据》:本文主要介绍Jmeter如何向数据库批量插入数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Jmeter向数据库批量插入数据Jmeter向mysql数据库中插入数据的入门操作接下来做一下各个元件的配置总结Jmete

MySql中的数据库连接池详解

《MySql中的数据库连接池详解》:本文主要介绍MySql中的数据库连接池方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql数据库连接池1、概念2、为什么会出现数据库连接池3、原理4、数据库连接池的提供商5、DataSource数据源6、DBCP7、C

StarRocks数据库详解(什么是StarRocks)

《StarRocks数据库详解(什么是StarRocks)》StarRocks是一个高性能的全场景MPP数据库,支持多种数据导入导出方式,包括Spark、Flink、Hadoop等,它采用分布式架构,... 目录StarRocks介绍什么是StarRocks?StarRocks适合什么场景?StarRock

Linux系统之authconfig命令的使用解读

《Linux系统之authconfig命令的使用解读》authconfig是一个用于配置Linux系统身份验证和账户管理设置的命令行工具,主要用于RedHat系列的Linux发行版,它提供了一系列选项... 目录linux authconfig命令的使用基本语法常用选项示例总结Linux authconfi

Windows环境下安装达梦数据库的完整步骤

《Windows环境下安装达梦数据库的完整步骤》达梦数据库的安装大致分为Windows和Linux版本,本文将以dm8企业版Windows_64位环境为例,为大家介绍一下达梦数据库的具体安装步骤吧... 目录环境介绍1 下载解压安装包2 根据安装手册安装2.1 选择语言 时区2.2 安装向导2.3 接受协议

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O