VC中用ADO和DataGrid控件显示和更新数据库中的数据
来源:互联网 发布:matlab 定义三维数组 编辑:程序博客网 时间:2024/05/16 02:07
VC中用ADO和DataGrid控件显示和更新数据库中数据。
以VC6.0为例
1、 新建一对话框
在资源视图中新建一个对话框,将对话框调整到适当大小,双击对话框创建对话框类。
2、 往对话框上添加DataGrid控件
在VC6中点击 Project->add toproject->components and controls。在弹出的对话框中双击Registered ActiveX Controls 在弹出的控件列表中选择Microsoft DataGrid Control 6.0(SP6)(OLEDB),点击insert,接下来的每一部都点确认按钮(ok按钮)。我们发现在工具箱中多了一个DataGrid控件的图标。
拖动该图标到对话框中,并且调整大小,设置属性为AllowAddNew、AllowDelete、AllowUpdate、ColumnHeaders、Enabled。
在DataCrid上右击用ClassWizard给对话框添加一个DataGrid变量m_dataGrid。
3、 添加代码
在对话框头文件中添加如下代码#import"C://program files//common files//system//ado//msado15.dll"no_namespace rename ("EOF", "adoEOF")
在对话框头文件的对话框类中添加如下代码
_ConnectionPtr pConnection;//数据库连接指针
_RecordsetPtr m_pRecordSet;//数据集指针
重载对话框OnInitDialog()函数,在其中添加如下代码
CoInitialize(NULL); //初始化Com组件pConnection.CreateInstance(__uuidof(Connection)); //Connection用于与数据库服务器的链接
CStringconStr; //数据库连接字符串
conStr.Format(_T("Driver=SQLSERVER;Database=%s;Server=%s;UID=%s;PWD=%s;"),"test","(local)","sa","sa");//注:此为ADO连接MS SQL数据库的一种方式,如果不是MS SQL数据库则连接方式不同
/******************连接数据库********************/
try
{
pConnection->ConnectionTimeout= 5; //设置连接时间
pConnection->Open(_bstr_t(conStr),"","",adModeUnknown); //连接SQL SERVER
}
catch(_com_errore) //捕捉异常
{
//AfxMessageBox(e.ErrorMessage());
return-5;
}
//创建数据集
m_pRecordSet.CreateInstance("ADODB.Recordset");
m_pRecordSet->CursorLocation= adUseClient;
CString cmdStr;
cmdStr="select pithology as 岩性,patno as 对应花纹 from Pithology_Patno";
try
{
m_pRecordSet->Open(_variant_t(cmdStr),_variant_t((IDispatch *)pConnection,true),adOpenKeyset,
adLockOptimistic, adCmdUnknown);
}
catch (CException e)
{
CString emsg;
e.GetErrorMessage((LPTSTR)&emsg,1);
AfxMessageBox(emsg);
return false;
}
m_dataGrid.SetRefDataSource(NULL);
m_dataGrid.SetRefDataSource((LPUNKNOWN)m_pRecordSet);
m_dataGrid.Refresh();
CoUninitialize();
现在DataGrid控件便具有添加、删除、修改数据的功能了。
- VC中用ADO和DataGrid控件显示和更新数据库中的数据
- WPF使用DataGrid控件显示和更新ADO.NET数据源
- VC中用Ado接口代码连接和使用与数据库
- 有关ActiveX控件中的DataGrid或ADO Data控件在vc++6.0和VS 版本中的使用
- DataGrid 控件中显示 SQL Server 数据库中的数据
- 使用JQuery EasyUI 中的DataGrid控件实现数据的提取和显示
- 数据显示:DataGrid和MSFlexGrid控件的区别
- 使用单击和双击更新DataGrid中的数据的例子
- 使用单击和双击更新DataGrid中的数据的例子
- 使用单击和双击更新DataGrid中的数据的例子
- DataGrid和itemRenderer中的控件的数据绑定问题
- VC++6.0 中用 ADO 存取 Access 数据库
- VC用ADO打开和关闭数据库
- VC 数据库编程 ADO和ODBC区别
- VC ADO dataGrid 数据库动态绑定
- VC ADO dataGrid 数据库动态绑定
- VC++ ADO数据库 FlexGrid控件
- Delphi中用ADO控件连接数据库例子
- JAVA基础面试中的几个问题[转]
- usb-skeleton.c 之 16---skel_probbe 重头戏
- jquery 验证框架 validate
- 小小感悟
- sybase update ,insert
- VC中用ADO和DataGrid控件显示和更新数据库中的数据
- 外键
- 谷歌手机日历同步设置Google Sync: Setup Instructions
- Under the Hood of J2EE Clustering
- 大家来评评这样的深圳房东...
- 实战Linux Bluetooth编程 (九) SDP层编程
- UUzone倒下了 360quan也倒下了 下一个是谁?(转)
- C++ 笔记点滴
- FreeBSD双线负载均衡NAT服务器