发布网友 发布时间:2022-04-12 13:34
共2个回答
懂视网 时间:2022-04-12 17:55
ado技术目前已经成为连接 数据库 的主流技术,下面我来介绍如何使用ado来动态 创建 access 数据库 。 为了使用ado,必须引入微软的两个动态连接库msadox.dll和msado15.dll: #pragma warning (disable: 4146) #import c:/Program Files/Common Files/system/
ado技术目前已经成为连接数据库的主流技术,下面我来介绍如何使用ado来动态创建access数据库。
为了使用ado,必须引入微软的两个动态连接库msadox.dll和msado15.dll:
#pragma warning (disable: 4146)
#import "c:/Program Files/Common Files/system/ado/msadox.dll"
#import "c:/Program Files/Common Files/system/ado/msado15.dll" no_namespace rename("EOF", "EndOfFile")
#pragma warning (default: 4146)
将上述代码加入到stdafx.h文件中,由于ado是com组件,因此使用ado之前还要初始化com环境:
CoInitialize(NULL);
下面是一个在access数据库中创建表的sql语句的例子:
HRESULT hr = S_OK;
CString strcnn(_T("Provider=Microsoft.JET.OLEDB.4.0;Data source = D://test.mdb"));
try
{
ADOX::_CatalogPtr m_pCatalog = NULL;
hr = m_pCatalog.CreateInstance(__uuidof (ADOX::Catalog));
if(FAILED(hr))
{
_com_issue_error(hr);
}
else
{
//这里的路径可以自己随意创建 ,我简单的填写了一下D://test.mdb13.
//m_pCatalog->Create("Provider=Microsoft.JET.OLEDB.4.0;Data source = D://test.mdb");
m_pCatalog->Create(_bstr_t(strcnn)); //Create MDB
}
}
catch(_com_error &e)
{
AfxMessageBox(e.ErrorMessage());
}
热心网友 时间:2022-04-12 15:03
strcon="provider=microsoft.ace.oledb.12.0;data source=F:\files\rmxx\Database1.accdb"追答先在本地建好数据库 配置好ODBC源 在vc输入以上程序连接数据库
至于写入数据我有个例子我不知道正确与否
username=request("username")
upwd=request("upwd")
upwd1=request("upwd1")
email=request("email")
sex=request("sex")
Server.CreateObject("ADODB.Connection")
set con=Server.CreateObject("ADODB.Connection")
con.open strcon
sql="select * from Database1"
set rs=server.createobject("ADODB.recordset")
rs.open sql,con,1,3
rs.addnew
rs("username")=username
rs("upwd")=upwd
rs("upwd1")=upwd1
rs("email")=email
rs("sex")=sex
rs.update
rs.close
set rs=nothing
con.close
set con=nothing