C语言连接Access数据库如何实现???标准的c语言

如题所述

1、C/C++与数据库交互,像 mssql/ mysql / oracle 等,一般都有成熟的第三方库,这些库里面无非就是封装了与数据库通讯的方式和通讯协议搜一下要用的数据库相关的 API 文档,会说得很清楚任何文件都是二进制数据,关键是数据存储的组织方式通用扩展名的文件,像gif/doc/jpg/wav,格式都是固定的。

2、举个例子,连接SQL:

  // 打开数据库
  strDBClass.Format(_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password=%s"), m_strUnEntryptMdbFilePath,m_strMDBPassword);
  // 创建连接
  HRESULT hr = m_pConnection.CreateInstance(_uuidof(Connection));
  _ConnectionPtr m_pConnection->Open(m_strDBClass,_T(""),_T(""),adConnectUnspecified);
  // 声明表单指针
  _RecordsetPtr pBandRecordset;
  pBandRecordset.CreateInstance(__uuidof(Recordset));
  // 执行语句
  CString strSQL(L"SELECT * FROM [Band]");
  m_pConnection->Execute((LPCTSTR)strSQL,NULL,0);
  // 提取某一项 例如BandInfo
  int iBandInfo = wcscmp(colum, L"BandInfo");
  while(!recordsetPtr->adoEOF)
  {
  var = recordsetPtr->GetCollect(colum);
  if(var.vt != VT_NULL)
  strName = (LPCSTR)_bstr_t(var);
  recordsetPtr->MoveNext();
  }

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-02-07
好像没有接口函数,因为如果用FILE之类的文件模式或者是二进制方式读写mdb文件会很麻烦的,因为要考虑mdb文件相当复杂的格式解析,更关键的是微软的东西从来都不开源,你无从解析它的文件格式!
最好的方法就是调用微软提供的数据库访问接口函数,比如使用ODBC\DAO\OLE DB\ADO等封装好的类库中的函数,这样可以避免解析文件之类的繁琐工作,还能最大限度地发挥针对不同版本的mdb文件解析的兼容性,最底层的代码已经是封装成dll的,你也是想看也看不到的。本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网