本方法通過Excel驅動寫入
請添加頭文件
#include"afxdb.h"
第一步創建Excel文件 安裝驅動
CString FileName = L"first.xls";
CString sDriver = L"MICROSOFT EXCEL DRIVER (*.XLS)"; // Excel安裝驅動
CString FILEEXCEL;
FILEEXCEL.Format(L"DRIVER={%s};DSN='''';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", sDriver, FileName, FileName);
第二步 打開數據庫 創建表
CDatabase date;
CString ssql;
if (date.OpenEx(FILEEXCEL, CDatabase::noOdbcDialog))
{
date.ExecuteSQL(L"CREATE TABLE 記錄表(FIR text,FIC text);"); // 字段為:名稱+類型
//插入數據
for (int i = 0; i < 10; i++)
{
ssql.Format(L"INSERT INTO 記錄表(FIR,FIC) VALUES('%d','%d');", i, i);
date.ExecuteSQL(ssql);
}
//關閉驅動
date.ExecuteSQL(ssql);
}
else
{
AfxMessageBox(L"沒有Excel驅動");
}
請看例子: 代碼[完整版]
void CExcelChangeDlg::OnBnClickedButton1()
{
CString FileName = L"first.xls";
CString sDriver = L"MICROSOFT EXCEL DRIVER (*.XLS)"; // Excel安裝驅動
CString FILEEXCEL;
FILEEXCEL.Format(L"DRIVER={%s};DSN='''';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", sDriver, FileName, FileName);
CDatabase date;
CString ssql;
if (date.OpenEx(FILEEXCEL, CDatabase::noOdbcDialog))
{
date.ExecuteSQL(L"CREATE TABLE 記錄表(FIR text,FIC text);");
//插入數據 // 如需遍歷數據庫插入請使用類似方法
for (int i = 0; i < 10; i++)
{
ssql.Format(L"INSERT INTO 記錄表(FIR,FIC) VALUES('%d','%d');", i, i);
date.ExecuteSQL(ssql);
}
//關閉驅動
date.ExecuteSQL(ssql);
}
else
{
AfxMessageBox(L"沒有Excel驅動");
}
AfxMessageBox(L"導出完成!");
}
完成!!!
如有疑問請置評!!