工控编程吧
标题:
288上位机VC MFC使用ADO创建与删除数据表
[打印本页]
作者:
qq263946146
时间:
2016-9-26 12:00
标题:
288上位机VC MFC使用ADO创建与删除数据表
(, 下载次数: 0)
上传
点击文件名下载附件
使用ADO创建与删除数据表
功能展示
ADO即ACTIVEX DATA OBJECT是微软数据应用程序 开发的新接口,是建立在OLE DB之上的高层数据库访问技术,我们当前例程实现使用ADO连接数据库,再创建与删除表格的功能,效果如图,在编辑框输入表格名,点击<添加左侧表>可以创建指定表格名称的数据表,同样也可删除存在的数据表;
要点提示
ADO数据库程序一般的开发流程是
1.初始化COM库;
2.引入ADO数据库文件;
3.使用Connection对象实例连接数据库;
4.连接成功后,通过connection ,command对象执行SQL命令,或利用Recordset对象取得结果记录集进行查询处理;
5.使用完毕后关闭链接释放对象;
Execute()是连接对象的成员 函数,通常在建立连接对象之后,可以利用此函数来执行简单的命令;
实现功能
1.新建基于对话框的应用程序
2.在App类的InitInstance()函数中添加代码AfxOleInit();//初始化COM,创建ADO连接等操作
3.在stdafx.h中加入ADO支持库
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")
4.在主对话框中添加连接对象指针_ConnectionPtr m_pConnection;
在OnInitDialog()函数中进行初始化操作
HRESULT hr;
try
{
hr =m_pConnection.CreateInstance("ADODB.Connection");//创建Connection对象
if(SUCCEEDED(hr))
{
hr=m_pConnection->Open("
rovider=Microsoft.Jet.OLEDB.4.0;Data Source=STUDENTSINFO.MDB",
"","",adModeUnknown);
///连接数据库
///上面一句中连接字串中的Provider是针对ACCESS2000环境的,
//对于ACCESS97,需要改为
rovider=Microsoft.Jet.OLEDB.3.51;
}
}
// }
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
}
5.在程序退出函数OnDestroy()中进行关闭连接释放操作
void CGkbc8Dlg::OnDestroy()
{
CDialog::OnDestroy();
m_pConnection->Close();
m_pConnection.Release();
}
6.最后是创建与删除按钮的添加与功能实现
添加两编辑框ID分别为IDC_EDIT1, IDC_EDIT2,两按钮<添加左侧表><删除左侧表>关联按钮点击函数
void CGkbc8Dlg::OnAddtable()
{
CString str,SQL;
GetDlgItemText(IDC_EDIT1,str);
if(str.IsEmpty())
return;
SQL.Format("CREATE TABLE %s(ID INTEGER,username TEXT,old INTEGER)",str);
_variant_t RecordsAffected;
m_pConnection->Execute((_bstr_t)SQL,&RecordsAffected,adCmdText);
MessageBox("The new table is added successfully");
}
void CGkbc8Dlg::OnDeletetable()
{
CString str,SQL;
GetDlgItemText(IDC_EDIT2,str);
if(str.IsEmpty())
return;
SQL.Format("DROP TABLE %s",str);
_variant_t RecordsAffected;
m_pConnection->Execute((_bstr_t)SQL,&RecordsAffected,adCmdText);
MessageBox("The new table is deleted successfully");
}
我们来演示下功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/c62a018a4c23ea7c5ec8382194d73686/0/0/w_19rsu6hyid.swf-albumId=6391603609-tvId=6391603609-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件 [weixinlianxi]1[/weixinlianxi]
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4