使用ADO ActiveX控件 ADO Data control 访问Access数据库。
我在我的对话框里加了个ADO Data control,用来访问Access数据库。我的做法如下。
前期已在StdAfx.h中添加
#include "COMDEF.h"
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
已经通过其属性对话框和数据库建立了连接,
1、从中选择Microsoft Jet 4.0 OLE DB Provider选项,然后单击“下一步”按钮,出现“测试连接”对话框,单击,选择数据库a1.mdb->打开单击“测试连接”按钮,出现对话框“测试连接成功”,
2、单击“确定”按钮退出。再右键单击Adodc1控件,选择Properties属性命令,见Use Connection String下的最终连接字符串为:Provider = Microsoft.Jet.OLEDB.4.0;Data Source = D:\Backup\我的文档\a1.mdb;Persist Security Info = False。
3、单击RecordSource选项卡,将Command Type选择为1-adCmdText。在Command Text(SQL)文本框中输入:select *from a1,然后关闭属性对话框。
并通过在其控件上右击->建立类向导,自动导入了 C_Recordset C_Recordset CFields CField CAdodc类。并申明了
CAdodc m_myadoc;
C_Recordset m_myrest;
CFields m_Fields;
CField m_Field;
在OnInitDialog()
中执行
m_myadoc.SetRecordSource("SELECT * FROM a1");
m_myadoc.Refresh();
m_myrest = m_myadoc.GetRecordset();
// 这一行以上的代码都没有问题。
m_myrest.MoveFirst();//正常运行时,程序自动结束。
//调试时显示Unhandled exception in a.exe (MFC042D.DLL):OxC000005: Access Violation
//只要是和m_myrest有关的任何操作都会导致上述的问题,包括m_myrest.GetRecordCount(),m_myrest.MoveNext()等。
//工程已经完成很多了,就差一点了,但是卡在这实在调试不出来,希望高手能人指点一二。
前期已在StdAfx.h中添加
#include "COMDEF.h"
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
已经通过其属性对话框和数据库建立了连接,
1、从中选择Microsoft Jet 4.0 OLE DB Provider选项,然后单击“下一步”按钮,出现“测试连接”对话框,单击,选择数据库a1.mdb->打开单击“测试连接”按钮,出现对话框“测试连接成功”,
2、单击“确定”按钮退出。再右键单击Adodc1控件,选择Properties属性命令,见Use Connection String下的最终连接字符串为:Provider = Microsoft.Jet.OLEDB.4.0;Data Source = D:\Backup\我的文档\a1.mdb;Persist Security Info = False。
3、单击RecordSource选项卡,将Command Type选择为1-adCmdText。在Command Text(SQL)文本框中输入:select *from a1,然后关闭属性对话框。
并通过在其控件上右击->建立类向导,自动导入了 C_Recordset C_Recordset CFields CField CAdodc类。并申明了
CAdodc m_myadoc;
C_Recordset m_myrest;
CFields m_Fields;
CField m_Field;
在OnInitDialog()
中执行
m_myadoc.SetRecordSource("SELECT * FROM a1");
m_myadoc.Refresh();
m_myrest = m_myadoc.GetRecordset();
// 这一行以上的代码都没有问题。
m_myrest.MoveFirst();//正常运行时,程序自动结束。
//调试时显示Unhandled exception in a.exe (MFC042D.DLL):OxC000005: Access Violation
//只要是和m_myrest有关的任何操作都会导致上述的问题,包括m_myrest.GetRecordCount(),m_myrest.MoveNext()等。
//工程已经完成很多了,就差一点了,但是卡在这实在调试不出来,希望高手能人指点一二。
...全文
相关推荐
在Visual Basic中实现与Oracle数据库的多种访问方式.pdf
在Visual Basic中实现与Oracle数据库的多种访问方式.pdf
VB与Access连接的方法
VB与Access连接的方法VB与Access连接的方法VB与Access连接的方法
vb数据库连接方式大全
在Visual Basic 6.0中,要建立与数据库的连接,可采用的技术手段很多,如:数据控件、数据对象、数据环境设计器等。开发人员可以根据自身的条件和用户的需求进行选择。
ADO实现连接数据库方法
ADO实现连接数据库方法,ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,请不必为此担心,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用,甚至比你以往所接触的ODBC API、DAO都要容易使用,
VB连接Access2010
借阅别人的文档,关于VB连接Access2010的,写得很好,特分享一下


数据库
