说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何在VC在创建access数据库,并创建表

编辑:说三道四文库 发布时间:2018-06-22 10:53
HTML文档下载 WORD文档下载 PDF文档下载
我想在vc下根据输入的字段名称等信息来生成数据库表,如何做?
#import "c:\Program Files\Common Files\system\ado\msadox.dll"

ADOX::_CatalogPtr pCatalog(__uuidof(ADOX::Catalog));
_bstr_t str="Provider=Microsoft.Jet.OLEDB.4.0;data source=C:\xxx.mdb";
try
{
    pCatalog->Create(str); //创建数据库
}
catch(_com_error &e)
{
  //错误处理
}

如果要创建表就可以先连接到刚建的数据库,然后用
_ConnectionPtr m_pconnection;
m_pconnection->Open();
CString sql="create table.....";
m_pconnection->Execute();//执行建表的SQL语句
CommandPtr    m_pCommand;
m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->ActiveConnection = m_pConnection;  // 将库连接赋于它
m_pCommand->CommandText = "CREATE DATABASE database_name";  // SQL语句
m_pRecordset = m_pCommand->Execute(NULL, NULL,adCmdText); //执行SQL语句
http://dev.csdn.net/article/25/25578.shtm
*****
想用ADO还是ODBC,先设个是数据源,得到后你就connection ,就execute sql .,就这样OK
在VC在创建access数据库,并创建表必须ADOX了,请参阅http://dev.csdn.net/article/25/25578.shtm
自己拼个CTEATE TABLE的 SQL语句不就可以吗
楼上的,还没创建库呢?能用Create table创建表吗?
这里是创建库:(我已经这样用了)
#include <afx.h>
#include <afxdisp.h>

#pragma warning (disable: 4146)
#import "c:\Program Files\Common Files\system\ado\msadox.dll" no_namespace
#import "c:\Program Files\Common Files\system\ado\msado15.dll" rename("EOF", "EndOfFile")
...
protected:
_CatalogPtr* m_pCatalog;
...
     bool CreateAccessDB(LPCTSTR lpstrConnection)
     {    
         try
{
m_pCatalog->Create(_bstr_t(lpstrConnection));
return true;
}
catch(_com_error &e)
{
return false;
}
     }
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘