如何用VC++6.0建立一个ACCESS数据库文件
4个回答
展开全部
用Dao就可以:
包含头文件#include"afxdao.h"
然后用如下代码:
CDaoDatabase m_DaoDB;
try
{
m_DaoDB.Create(_T("MsgInfo.mdb")); //创建mdb文件
}
catch(CDaoException* e)
{
CString strMsg;
strMsg.Format(_T(" 创建数据库失败! 原因:%s (%d)\n\n"),
(LPCTSTR)e->m_pErrorInfo->m_strDescription,
e->m_pErrorInfo->m_lErrorCode);
AfxMessageBox(strMsg,MB_OK|MB_ICONSTOP);
return false ;
}
CDaoTableDef m_DaoDef(&m_DaoDB);
m_DaoDef.Create(_T("工资信息"));//在刚刚创建的mdb文件中创建一个数据表
//创建字段
m_DaoDef.CreateField(_T("工号"),dbText,36,dbVariableField);
m_DaoDef.CreateField(_T("姓名"),dbText,38,dbVariableField);
m_DaoDef.CreateField(_T("工资"),dbBoolean,1,dbUpdatableField);
m_DaoDef.Append();
m_DaoDef.Close();
m_DaoDB.Close();
包含头文件#include"afxdao.h"
然后用如下代码:
CDaoDatabase m_DaoDB;
try
{
m_DaoDB.Create(_T("MsgInfo.mdb")); //创建mdb文件
}
catch(CDaoException* e)
{
CString strMsg;
strMsg.Format(_T(" 创建数据库失败! 原因:%s (%d)\n\n"),
(LPCTSTR)e->m_pErrorInfo->m_strDescription,
e->m_pErrorInfo->m_lErrorCode);
AfxMessageBox(strMsg,MB_OK|MB_ICONSTOP);
return false ;
}
CDaoTableDef m_DaoDef(&m_DaoDB);
m_DaoDef.Create(_T("工资信息"));//在刚刚创建的mdb文件中创建一个数据表
//创建字段
m_DaoDef.CreateField(_T("工号"),dbText,36,dbVariableField);
m_DaoDef.CreateField(_T("姓名"),dbText,38,dbVariableField);
m_DaoDef.CreateField(_T("工资"),dbBoolean,1,dbUpdatableField);
m_DaoDef.Append();
m_DaoDef.Close();
m_DaoDB.Close();
展开全部
vc++6.0 只能提供连接数据库 的方法,而不能建立数据库 ,你下个ACCESS 试试吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在VC++中建立MDB数据库及表是比较麻烦,不是必须的话可用其他方法解决,如先建立空的模板MDB进行操作。
方法一:可利用ADO建立MDB数据库及表:
使用ADOX::CatalogPtr来创建mdb文件:
...
CString strcnn(_T("Provider=Microsoft.JET.OLEDB.4.0;Data source=demo.mdb"));
...
���ADOX::_CatalogPtr m_pCatalog = NULL;
���hr = m_pCatalog.CreateInstance(__uuidof (ADOX::Catalog));
...
创建一个连接对象打开刚刚建立的mdb文件:
_ConnectionPtr g_pConn;
g_pConn.CreateInstance(__uuidof(Connection));
g_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=demo.mdb;", "", "", adConnectUnspecified);
...
再利用SQL中的CREATE TABLE语句生成表
方法二:利用ACCESS的APPLICATION对象-自动执行机制生成MDB及表
CreateObject('Access.Application')
.NewCurrentDatabase('demo.mdb')
.Docmd.RunSQL(v_SqlCmdForCreateTable)
方法一:可利用ADO建立MDB数据库及表:
使用ADOX::CatalogPtr来创建mdb文件:
...
CString strcnn(_T("Provider=Microsoft.JET.OLEDB.4.0;Data source=demo.mdb"));
...
���ADOX::_CatalogPtr m_pCatalog = NULL;
���hr = m_pCatalog.CreateInstance(__uuidof (ADOX::Catalog));
...
创建一个连接对象打开刚刚建立的mdb文件:
_ConnectionPtr g_pConn;
g_pConn.CreateInstance(__uuidof(Connection));
g_pConn->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=demo.mdb;", "", "", adConnectUnspecified);
...
再利用SQL中的CREATE TABLE语句生成表
方法二:利用ACCESS的APPLICATION对象-自动执行机制生成MDB及表
CreateObject('Access.Application')
.NewCurrentDatabase('demo.mdb')
.Docmd.RunSQL(v_SqlCmdForCreateTable)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个很容易,网上有代码的,找找吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |