首先,VC連接到access2003
1.要創建項目,請將以下兩行添加到stdafx.h文件中:
# import " C:\ Program Files \ Common Files \ system \ ado \ msadox . dll "
# import " C:\ Program Files \ common Files \ system \ ado \ msado 15 . dll " no _ namespace rename(" EOF "," adoEOF ")
2.添加:
//初始化OLE
如果(!AfxOleInit())
{
AfxMessageBox("未能初始化OLE!");
返回FALSE
}
3.在適當的位置定義變量並初始化它們。
_ ConnectionPtr _ pConnection//ADO連接指針
_ RecordsetPtr _ pRecordset//ADO記錄集指針
//創建ADO實例
_ p連接。create instance(_ _ uuidof(Connection));
_pRecordset。create instance(_ _ uuidof(Recordset));
4.連接access2003數據庫文件
//連接數據庫文件
CString strSQL
strSQL。Format("Provider=Microsoft。Jet . OLEDB.4.0數據源= % s;Jet OLEDB:數據庫密碼=lzq "," access 1 . MDB ");//Password=lzq是這個數據庫文件的用戶密碼,沒有密碼可以留空。
嘗試
{
_ p連接-& gt;打開(strSQL。AllocSysString(),"","",admode unknown);
}
catch (_com_error e)
{
CString strError
斯特雷羅。Format("警告:無法連接到ADO數據庫!錯誤消息:%s ",e . error message());
AfxMessageBox(strError);
返回FALSE
}
5.打開數據庫文件記錄集並讀取它。
strSQL。format(" select * from vib data where id = % s "," 2002001 ");//這意味著id=2002001的所有記錄都將從數據庫文件的VIBDATA表中過濾掉。
嘗試
{
_ pRecordset-& gt;打開(strSQL。AllocSysString(),_pConnection。GetInterfacePtr()、adOpenDynamic、adLockOptimistic、ADC mdtext);
}
catch (_com_error e)
{
CString strError
斯特雷羅。Format("警告:打開ADO數據表時出現異常!錯誤消息:%s ",e . error message());
AfxMessageBox(strError);
}
_ variant _ t varTime[10000];
while(_ pRecordset-& gt;AdoEOF == VARIANT_FALSE)//讀取所選記錄的時間列數據。
{
varTime[I]= _ pRecordset-& gt;get collect(" time ");
_ pRecordset-& gt;MoveNext();
}
//處理讀取的數據
....
...
//處理完數據後,關閉記錄集和連接。
_ pRecordset-& gt;close();
_ p連接-& gt;close();
第二,VC創建了excel2003
過程差不多,建議妳上網找“VC++和Excel2003混合編程”。