怎样用C或C++(最好是C)语言向Access数据库写入或读出数据?
我一直做的是C或C++独立方面的程序,不知道该怎么做,最好是C语言是因为,我C++才刚开始学习模板……有谁会的先谢谢了...
我一直做的是C或C++独立方面的程序,不知道该怎么做,最好是C语言是因为,我C++才刚开始学习模板……
有谁会的先谢谢了 展开
有谁会的先谢谢了 展开
6个回答
展开全部
最好是用C++,说起来很多,去你下载孙鑫 C++深入讲解,那里面有一课是对ACC开发,我就是看那个看会的。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-12-30
展开全部
可以 使用odbc接口,也可以 使用ado接口
~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建议直接使用ODBC
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
头文件中定义:
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
________________________________________________________________
AfxOleInit();
try
{
// 打开本地Access库student.mdb
m_pConnection.CreateInstance(__uuidof(Connection));
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.mdb","","",adModeUnknown); //student.mdb 更换为自己的
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败,确认数据库student.mdb是否在当前路径下!");
return FALSE;
}
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM shujuku", // 查询shujuku表中所有字段
m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
以上是连接数据库的代码。
int bj;
CString sex;
while(!m_pRecordset->adoEOF)
{
bj=atoi((char*)(_bstr_t)m_pRecordset1->GetCollect("班级")); 转换成int型;
sex.Format("%s",(char*)(_bstr_t)m_pRecordset1->GetCollect("性别")); 转换成CString型。
m_pRecordset->MoveNext();
}
以上是读取shujuku中班级 和 性别列中的数据;
CString str,str1;
_bstr_t sql;
try
{
sql = "UPDATE shujuku SET 语文='"+str+"',日期='"+nData+"' WHERE 学号='"+str1+"'";//写入语文成绩 日期 按学号。
m_pConnection->Execute(sql,NULL,adCmdText);
}
catch (_com_error e)
{
MessageBox("发生错误,保存失败!");
}
以上是写入数据库代码;
如何向一个新表中写入数据我也不知道,正在查找中~!请高手不吝赐教。
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
________________________________________________________________
AfxOleInit();
try
{
// 打开本地Access库student.mdb
m_pConnection.CreateInstance(__uuidof(Connection));
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.mdb","","",adModeUnknown); //student.mdb 更换为自己的
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败,确认数据库student.mdb是否在当前路径下!");
return FALSE;
}
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM shujuku", // 查询shujuku表中所有字段
m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
以上是连接数据库的代码。
int bj;
CString sex;
while(!m_pRecordset->adoEOF)
{
bj=atoi((char*)(_bstr_t)m_pRecordset1->GetCollect("班级")); 转换成int型;
sex.Format("%s",(char*)(_bstr_t)m_pRecordset1->GetCollect("性别")); 转换成CString型。
m_pRecordset->MoveNext();
}
以上是读取shujuku中班级 和 性别列中的数据;
CString str,str1;
_bstr_t sql;
try
{
sql = "UPDATE shujuku SET 语文='"+str+"',日期='"+nData+"' WHERE 学号='"+str1+"'";//写入语文成绩 日期 按学号。
m_pConnection->Execute(sql,NULL,adCmdText);
}
catch (_com_error e)
{
MessageBox("发生错误,保存失败!");
}
以上是写入数据库代码;
如何向一个新表中写入数据我也不知道,正在查找中~!请高手不吝赐教。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-01-04
展开全部
项目一、在文本框中设计一个滚动字幕
实验步骤:
1. 建立一个单文本框工程,如:mfc_7。
2. 在查看菜单中添加一个新的菜单项“启动”,并设置其ID为ID_TEST。
3. 为“启动”菜单添加消息处理函数OnTest(),注意是在CMfc_7View类中添加。
4. 为OnTest( )函数添加如下代码:
void CMfc_7View::OnTest( )
{
// TODO: Add your command handler code here
SetTimer(1,200,NULL);
}
5. 在类视图(ClassView)下添加数据成员:private: int x;
6. 修改OnDraw( )函数如下:
void CMfc_7View::OnDraw(CDC* pDC)
{
// CMfc_7Doc* pDoc = GetDocument();
// ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
TRACE("This is a little app.");
pDC->TextOut(x,100,"你妈喊你回家吃饭喽!");
x=x+50;
RECT re;
GetClientRect(&re);
if(x>re.right-re.left)
x=0;
}
7. 在类向导中,为CMfc_7View类添加一个WM_TIMER的消息响应函数OnTimer( ),代码如下:
void CMfc_7View::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
Invalidate();
}
8. 运行测试。
实验步骤:
1. 建立一个单文本框工程,如:mfc_7。
2. 在查看菜单中添加一个新的菜单项“启动”,并设置其ID为ID_TEST。
3. 为“启动”菜单添加消息处理函数OnTest(),注意是在CMfc_7View类中添加。
4. 为OnTest( )函数添加如下代码:
void CMfc_7View::OnTest( )
{
// TODO: Add your command handler code here
SetTimer(1,200,NULL);
}
5. 在类视图(ClassView)下添加数据成员:private: int x;
6. 修改OnDraw( )函数如下:
void CMfc_7View::OnDraw(CDC* pDC)
{
// CMfc_7Doc* pDoc = GetDocument();
// ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
TRACE("This is a little app.");
pDC->TextOut(x,100,"你妈喊你回家吃饭喽!");
x=x+50;
RECT re;
GetClientRect(&re);
if(x>re.right-re.left)
x=0;
}
7. 在类向导中,为CMfc_7View类添加一个WM_TIMER的消息响应函数OnTimer( ),代码如下:
void CMfc_7View::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
Invalidate();
}
8. 运行测试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询