热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MFC连接SQL数据库操作

要操作SQL数据库要经过以下几个步骤:1.建立数据库2.配置数据源3.数据库的连接最后就可以对数据库里面的数据进行查改删了【1】对于建立SQL数据库的话,可以通过SQLServerManagem

要操作SQL数据库要经过以下几个步骤:

1.建立数据库

2.配置数据源

3.数据库的连接

最后就可以对数据库里面的数据进行查改删了

 

【1】对于建立SQL数据库的话,可以通过SQL Server Management Studio,根据自己的需要建立数据库

【2】配置数据源

数据库设计完成后,我们并不能直接的去访问它,必须通过配置数据源让应用程序和数据库之间建立连接,直白点就是为数据库创建一个接口,让程序通过这个窗口去操作数据库。

1.打开控制面板-》管理工具-》数据源(ODBC)

点击添加

 

选择数据源驱动

 

输入数据源名称和选择SQL服务器

 

登录验证

 

选择数据库-》要操作的是哪个数据库就选择哪个数据库,这里我拿master数据库做为实例

 

设置完成

【3】数据库的连接

         到了MFC的阶段了,首先建立一个MFC工程,放置两个按钮,对两个按钮实现消息响应,一个名称为“连接数据库”,一个为“查询数据库信息”。

因为要使用到CDatabase类所以需要在stdafx.h中包含afxdb.h头文件。

在Dlg类中定义两个变量 CDatabase m_db; CRecordset rs;

“连接数据库”按钮的消息响应函数代码如下

////////////////////////////////////////连接数据库按钮代码//////////////////////////////////////////////////////////////////
TRY
{
m_db.OpenEx(_T("DSN=Test;"),CDatabase::noOdbcDialog);//连接到一个名为Test的数据源
rs.m_pDatabase = &m_db;
}
//////////////////////////处理异常消息
CATCH(CDBException,ex)
{
AfxMessageBox(ex->m_strError);
AfxMessageBox(ex->m_strStateNativeOrigin);
}
AND_CATCH(CMemoryException,pEx)
{ pEx->ReportError();
AfxMessageBox(_T("memory exception"));
} AND_CATCH(CException,ex)
{
TCHAR szError[100];
ex->GetErrorMessage(szError,100);
AfxMessageBox(szError);
}
END_CATCH


“查询数据库信息”按钮的消息响应函数代码如下
////////////////////////////////////////查询数据库信息//////////////////////////////////////////////////////////////////
CString sql = _T("SELECT name FROM spt_values WHERE (number=1)");
//要执行的SQL语句
CString psd;
//存放查询结果
TRY
{
rs.Open(AFX_DB_USE_DEFAULT_TYPE,sql);
//打开查询记录
rs.GetFieldValue(_T("name"),psd);
//得到数据
}
CATCH(CDBException,ex)
{
AfxMessageBox(ex->m_strError);
AfxMessageBox(ex->m_strStateNativeOrigin);
}
AND_CATCH(CMemoryException,pEx)
{
pEx->ReportError();
AfxMessageBox(_T("memory exception"));
}
END_CATCH
MessageBox(psd);
 

先点击“连接数据库按钮代码”然后点击“查询数据库信息”,可以看到弹出你所查询到信息,关于SQL语句方面的话大家可以看SQL基础,还有其他的删除增加表等操作那就比较简单了,大家可以自己设计一下。

这里为了节省时间,只是给出了实现方法。

具体的思路大家可以自己设计,比如把连接数据库操作放到 对话框初始化菜单,然后设置查询对话框跟复选框来进行功能选择,把获取到的信息放到树里面或者LIST等控件里面。


推荐阅读
author-avatar
Andy
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有