导航:首页 > 编程大全 > 两个对话框传递数据库

两个对话框传递数据库

发布时间:2023-03-06 12:12:57

A. VC++6.0通过MFC 创建了 对话框 ,然后怎样通过SQL Server 连接到数据库

class DBConnection
{
public:
DBConnection(void);
~DBConnection(void);
int OpenConnect(void);
int ExecuteSQL(_bstr_t strCmd);
_RecordsetPtr GetRecondSetPrt();
private:
_ConnectionPtr m_pConnection; //链接数据库德指针变量
_RecordsetPtr m_pRecordset; //指向记录集的指针
_variant_t RecordsAffected; //受影响的记录条数
};

DBConnection::DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

DBConnection::~DBConnection(void)
{
m_pConnection=NULL;
m_pRecordset=NULL;
}

//打开数据库链接
int DBConnection::OpenConnect(void)
{
try
{
//创建连接对象
m_pConnection.CreateInstance("ADODB.Connection");

//设置连接字符串

_bstr_t strConnect ="Provider=SQLOLEDB;Data Source=20110121-1545\\SQLEXPRESS;\
Initial Catalog=ExpManDB;User ID=sa;PWD=123";

//设置连接超时时间为5秒
m_pConnection->ConnectionTimeout = 5;

//连接数据库
m_pConnection->Open(strConnect, "", "", adModeUnknown);
return 1;

}
catch(_com_error e)
{
CString errorMsg;
errorMsg.Format(_T("连接数据库失败!\r错误信息:%s"),(LPCSTR)e.ErrorMessage());
AfxMessageBox(errorMsg);
return 0;
}
}

//返回受影响的记录条数
int DBConnection::ExecuteSQL(_bstr_t strCmd)
{
if(m_pConnection->State)
{
try
{
m_pRecordset.CreateInstance("ADODB.Recordset"); //为Recordset对象创建实例
//执行SQL语句,并返回受影响的记录条数
m_pRecordset=m_pConnection->Execute(strCmd,&RecordsAffected,adCmdText);
return RecordsAffected.intVal;
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
return 0;
}
}
return 0;
}

//返回记录集以便后续使用
_RecordsetPtr DBConnection::GetRecondSetPrt()
{
return m_pRecordset;
}
可以像这样使用,strCmd为sql语句
DBConnection dbConnector;
if(dbConnector.OpenConnect() == 0)
{
return;
}
if(dbConnector.ExecuteSQL((_bstr_t)strCmd) == 0)
{
return;
}
当然如果你还需要取出数据的时候可以这样用
_RecordsetPtr pRecordSet;
pRecordSet=dbConnector.GetRecondSetPrt();
_variant_t vCardNo;
vCardNo = pRecordSet->GetCollect("cardNO"); //得到数据表种cardNO字段
后面_variant_t类型就可以转换为int float CString等各种类型了。
如果有什么问题再交流。

阅读全文

与两个对话框传递数据库相关的资料

热点内容
windows7怎么没有无线网络 浏览:917
5s苹果手机录像只有沙沙响的声音 浏览:879
多张图纸怎样打印到一个pdf文件里 浏览:347
安装cad2020出现无法定位inf文件 浏览:728
百度竞价数据如何分析 浏览:965
ps文件发送第三方打印 浏览:547
linux命令界面显示文件名 浏览:930
超级录屏视频在文件夹里不能播放 浏览:549
最简单的编程软件有哪些 浏览:14
博客签到系统如何设计数据库 浏览:639
论文怎么设置目录word 浏览:609
广电网络dlna是什么意思 浏览:12
js变量加下划线 浏览:18
app开发工作是吃青春饭吗 浏览:117
苹果手机国家查询 浏览:765
苹果6照片删了怎么找回 浏览:399
文件夹控制面板 浏览:536
人工神经网络人脸识别 浏览:531
打开cad提示参照文件 浏览:521
如何计算数轴上三点abc对应的数据 浏览:985

友情链接