当前位置:首页 » 操作系统 » mfcaccess数据库

mfcaccess数据库

发布时间: 2022-10-09 19:01:59

㈠ 对于MFC连接ACCESS数据库并在对话框中显示出来

cdatabase::open;
virtual
bool
open
(
lpctstr
lpszdsn,
bool
bexclusive
=
false,
bool
breadonly
=
false,
lpctstr
lpszconnect
=
“odbc;”,
bool
busecursorlib
=
true
);
throw(
cdbexception,
cmemoryexception
);
参数含义:
lpszdsn指定了数据源名,在lpszconnect参数中也可包括数据源名,此时lpszdsn必需为null,若在函数中未提供数据源名且使lpszdsn为null,则会显示一个数据源对话框,用户可以在该对话框中选择一个数据源.
bexclusive说明是否独占数据源,由于目前版本的类库还不支持独占方式,故该参数的值应该是false,这说明数据源是被共享的.
breadonly若为true则对数据源的连接是只读的.
lpszconnect指定了一个连接字符串,连接字符串中可以包括数据源名、用户帐号(id)和口令等信息,字符串中的"odbc"表示要连接到一个odbc数据源上.
busecursorlib若为true,则会装载光标库,否则不装载,快照需要光标库,动态集不需要光标库.
参考代码:
#include
"afxdb.h"
cdatabase
database;
cstring
sdriver
=
"microsoft
access
driver
(*.mdb)";
cstring
sdsn;
cstring
sfile
=
"c://works//readdb//test.mdb";//change
path
here
//
create
odbc
connection
dinamically
sdsn.format("odbc;driver={%s};dsn='';dbq=%s",sdriver,sfile);
//
open
the
database
database.open(null,false,false,sdsn);

㈡ mfc无法将数据写入access数据库

先建立一个和Data.mdb数据库的连接(connection),然后才能执行sql语句建立表。

㈢ MFC怎么连接access数据库

1、在MFC的工程中添加一个access文件
2、在MFC中添加记录集
try
{
m_pConn.CreateInstance("ADODB.Connection");
_bstr_t Connection ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\\aaaa.mdb;Persist Security Info=False";//aaaa为你的access的文件名
m_pConn->Open(Connection, "", "", adConnectUnspecified);
}
catch(_com_error &e)
{
::CoUninitialize();
::AfxMessageBox(e.ErrorMessage());
return FALSE;
}
3、在stdAfx.h文件中添加语句
#import "c:\Program Files\Common Files\System\ADO\msado15.dll" no_namespace rename("EOF", "ENDOFFILE")
4、在需要打开数据库的地方添加打开表的函数
StrSQL="Select * From bbbb";//bbbb为表名
m_pRs.CreateInstance("ADODB.Recordset");
m_pRs->Open((_variant_t)StrSQL, _variant_t((IDispatch *)theApp.m_pConn,true), adOpenStatic, adLockOptimistic, adCmdText);
{
UpdateData(TRUE);
//需要干的事情
m_pRs->Update();
}
m_pRs->Close();

㈣ 如何使用MFC连接ACCESS数据库

try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///
if( TRUE == SUCCEEDED(hr))
{
strDBFile = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strDBFile;
hr = m_pConnection->Open((_bstr_t)strDBFile ,_bstr_t(strUser),_bstr_t(strUser),adModeUnknown);
}
}
catch(_com_error e)
{
CString errormessage;
errormessage.Format("%s",e.ErrorMessage());
AfxMessageBox(errormessage);
return FALSE;
}

㈤ mfc中连接access数据库的详细步骤都是什么

比如在你的工程目录中建一个 dbf\vir.mdb //Access数据库,然后你需要做以下操作:
1.在StadAfx.h里面添加#include <afxdb.h> //新加入头文件,用于CDatabase类。
2.在StadAfx.h最后的#endif上添加#import "msado15.dll" no_namespace rename("EOF","rsEOF")
这时,你要把msado15.dll拷到与dbf同级的目录,也就是工程目录里,当然你可以该路径
3.在你自己的工程里,比如MyProc是你建的工程,添加代码
CMyPorcApp::CMyProcApp(){
CoInitialize(NULL);
SQLConfigDataSource(NULL,ODBC_ADD_DSN, "Microsoft Access Driver (*.mdb)",\
"DSN=MyImage;DBQ=dbf\\vir.mdb;DEFAULTDIR=dbf"); //注册本地数据库数据源
m_db.OpenEx("DSN=MyImage;;",CDatabase::noOdbcDialog);//MyImage是数据源名称
}
4.在前面的函数体之前创建全局变量CDatabase m_db; CRecordset m_rec(&m_db);
5.使用数据库{
CString strSQL="select * from virdb";
BSTR bstrSQL=strSQL.AllocSysString();
m_rec.Open(CRecordset::dynaset,strSQL);
while(!m_rec.IsEOF())
{
// 使用数据库的代码,读出来的数据都是字符串型的
CString MyVirable;
m_rec.GetFieldValue("字段名",MyVirable); //将某个字段的当前行的值读到MyVirabl中
// ......
m_rec.MoveNext(); //将记录移到下一行
}
}

本程序是自动注册数据源的,当然可以手动注册数据源,关于如何注册数据源并不麻烦,叙述起来不太方面,你就参考其他的吧。不过建议不用手动注册数据源,这样你地程序移植性不好.

㈥ 用mfc编写程序 access数据库新表建立失败

先建立一个和Data.mdb数据库的连接(connection),然后才能执行SQL语句建立表。

㈦ mfc中access数据库调用表问题

由于access不支持触发器,要使用一句sql语句进行两张表的插入会有困难,你建一个查询然后进入sql视图,然后在里面分别写两个insert语句向两张表里增加数据就好了,使用的时候直接执行这个函数就可以实现给两张表同时增加数据了。

㈧ MFC做的登录界面连接access数据库

刚刚写了个access的系统

.cpp中

//hxx函数主要用于打开数据库连接
void ADOConn::OnInitADOConn()
{
::CoInitialize(NULL); //why初始化OLE/COM库环境
try
{
m_pCon.CreateInstance("ADODB.Connection"); //创建Connection对象
m_pCon->ConnectionTimeout=3; //设置连接延时
//设置连接字符串why
//m_pCon->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=InfoMan.mdb","","",adModeUnknown);
m_pCon->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=InfoMan.mdb;Persist Security Info=False;Jet OLEDB:Database Password=1234","","",adModeUnknown); }
catch(_com_error e) //捕获异常
{
AfxMessageBox(e.Description()); //显示错误信息
}
}

.h中
#import "G:\\MY_PRO\\InfoMan\\msado15.dll"no_namespace\
rename("EOF","adoEOF")

_ConnectionPtr m_pCon; //添加一个指向Connection对象的指针
_RecordsetPtr m_pRs; //添加一个指向Recordset对象的指针

㈨ MFC中如何连接access数据库

比如在你的工程目录中建一个 dbfvir.mdb //Access数据库,然后你需要做以下操作:

1.在StadAfx.h里面添加#include <afxdb.h> //新加入头文件,用于CDatabase类。

2.在StadAfx.h最后的#endif上添加#import "msado15.dll" no_namespace rename("EOF","rsEOF")

这时,你要把msado15.dll拷到与dbf同级的目录,也就是工程目录里,当然你可以该路径

3.在你自己的工程里,比如MyProc是你建的工程,添加代码

CMyPorcApp::CMyProcApp(){

CoInitialize(NULL);

SQLConfigDataSource(NULL,ODBC_ADD_DSN, "Microsoft Access Driver (*.mdb)",

"DSN=MyImage;DBQ=dbf\vir.mdb;DEFAULTDIR=dbf"); //注册本地数据库数据源

m_db.OpenEx("DSN=MyImage;;",CDatabase::noOdbcDialog);//MyImage是数据源名称

}

4.在前面的函数体之前创建全局变量CDatabase m_db; CRecordset m_rec(&m_db);

5.使用数据库{

CString strSQL="select * from virdb";

BSTR bstrSQL=strSQL.AllocSysString();

m_rec.Open(CRecordset::dynaset,strSQL);

while(!m_rec.IsEOF())

{

// 使用数据库的代码,读出来的数据都是字符串型的

CString MyVirable;

m_rec.GetFieldValue("字段名",MyVirable); //将某个字段的当前行的值读到MyVirabl中

// ......

m_rec.MoveNext(); //将记录移到下一行

}

}

本程序是自动注册数据源的,当然可以手动注册数据源,关于如何注册数据源并不麻烦,叙述起来不太方面,你就参考其他的吧。不过建议不用手动注册数据源,这样你地程序移植性不好.

㈩ mfc存ACCESS2007数据库问题

比如在你的工程目录中建一个dbf\vir.mdb//Access数据库,然后你需要做以下操作:1.在StadAfx.h里面添加#include//新加入头文件,用于CDatabase类。2.在StadAfx.h最后的#endif上添加#import"msado15.dll"no_namespacerename("EOF","rsEOF")这时,你要把msado15.dll拷到与dbf同级的目录,也就是工程目录里,当然你可以该路径3.在你自己的工程里,比如MyProc是你建的工程,添加代码CMyPorcApp::CMyProcApp(){CoInitialize(NULL);SQLConfigDataSource(NULL,ODBC_ADD_DSN,"MicrosoftAccessDriver(*.mdb)",\"DSN=MyImage;DBQ=dbf\\vir.mdb;DEFAULTDIR=dbf");//注册本地数据库数据源m_db.OpenEx("DSN=MyImage;;",CDatabase::noOdbcDialog);//MyImage是数据源名称}4.在前面的函数体之前创建全局变量CDatabasem_db;CRecordsetm_rec(&m_db);5.使用数据库{CStringstrSQL="select*fromvirdb";BSTRbstrSQL=strSQL.AllocSysString();m_rec.Open(CRecordset::dynaset,strSQL);while(!m_rec.IsEOF()){//使用数据库的代码,读出来的数据都是字符串型的CStringMyVirable;m_rec.GetFieldValue("字段名",MyVirable);//将某个字段的当前行的值读到MyVirabl中//m_rec.MoveNext();//将记录移到下一行}}本程序是自动注册数据源的,当然可以手动注册数据源,关于如何注册数据源并不麻烦,叙述起来不太方面,你就参考其他的吧。不过建议不用手动注册数据源,这样你地程序移植性不好.

热点内容
大华录像机哪里有安卓设备 发布:2025-05-15 14:25:06 浏览:808
录制脚本方案 发布:2025-05-15 14:25:04 浏览:165
奇石脚本业 发布:2025-05-15 14:23:44 浏览:680
android中的socket 发布:2025-05-15 14:22:15 浏览:408
apph5源码 发布:2025-05-15 14:19:51 浏览:666
2d游戏按键精灵脚本教程 发布:2025-05-15 14:10:15 浏览:279
服务器上的邮件如何销毁 发布:2025-05-15 14:02:49 浏览:138
饥荒安卓版如何解除手柄模式 发布:2025-05-15 14:02:05 浏览:112
算法强化班 发布:2025-05-15 14:02:04 浏览:346
c语言编译后图片 发布:2025-05-15 13:51:57 浏览:793