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

两个对话框传递数据库

发布时间: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等各种类型了。
如果有什么问题再交流。

阅读全文

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

热点内容
win10怎么找到写字板 浏览:756
阴阳师安卓独立版本 浏览:395
无法复制u盘内的文件错误 浏览:737
u盘装系统不是iso文件 浏览:181
vivoy18l刷安卓44 浏览:853
wifi和数据哪个好 浏览:695
哪里适合孩子学习编程 浏览:773
miui8桌面文件夹 浏览:18
哪些文件值得收藏 浏览:549
linux查看几兆网卡 浏览:386
iphone4清理后台 浏览:599
new文件怎么改为pdf 浏览:930
刻录文件用什么打印机 浏览:888
德国大数据工程师年薪大概多少钱 浏览:870
训练哪个app好 浏览:821
90版本新男魔法师刷图加点2015 浏览:881
如何进行数据差异性比较 浏览:68
微信聊天记录默认存在哪个文件夹 浏览:252
张孝祥java邮件开发详解 浏览:431
财政保障水平分析取哪个数据 浏览:391

友情链接