如何将EXCEL数据导入不同数据库(如ACCESS、MSSQL)中?

2026-05-08 13:523阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计564个文字,预计阅读时间需要3分钟。

如何将EXCEL数据导入不同数据库(如ACCESS、MSSQL)中?

pythonC++中实现将EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码在将EXCEL的数据导入数据库之前,先进行一些简单的准备工作:1. 将数据所在的EXCEL表另存为DBF格式。2. 打开BCB,添加以下代码:

如何将EXCEL数据导入不同数据库(如ACCESS、MSSQL)中?

// 添加必要的库#include #include

// 连接到数据库HCNTXT hCntxt;HCNTXN hCntxn;HENV hEnv;HSTMT hStmt;long result;

// 设置连接参数SQLRETURN retCode;SQLINTEGER cCode;SQLINTEGER iErrNo;SQLCHAR sErrMsg[512];SQLINTEGER iLen;

// 打开数据库连接retCode=SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &hEnv);retCode=SQLSetEnvAttr(hEnv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);retCode=SQLAllocHandle(SQL_HANDLE_DBC, hEnv, &hCntxt);retCode=SQLConnect(hCntxt, (SQLCHAR*)数据库服务器名, SQL_NTS, (SQLCHAR*)用户名, SQL_NTS, (SQLCHAR*)密码, SQL_NTS);

// 准备SQL语句SQLCHAR szSQL[1024];SQLPrepare(hStmt, (SQLCHAR*)INSERT INTO 表名 (列1, 列2, ...) VALUES (?, ?, ...), SQL_NTS);

// 执行SQL语句SQLINTEGER iValue1=1;SQLINTEGER iValue2=2;SQLBindParameter(hStmt, 1, SQL_PARAM_INPUT, SQL_C_LONG, SQL_INTEGER, 0, 0, &iValue1, 0, NULL);SQLBindParameter(hStmt, 2, SQL_PARAM_INPUT, SQL_C_LONG, SQL_INTEGER, 0, 0, &iValue2, 0, NULL);retCode=SQLExecute(hStmt);

// 关闭数据库连接SQLDisconnect(hCntxt);SQLFreeHandle(SQL_HANDLE_STMT, hStmt);SQLFreeHandle(SQL_HANDLE_DBC, hCntxt);SQLFreeHandle(SQL_HANDLE_ENV, hEnv);

C++ 中实现把EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码

在把EXCEL的数据导入数据库之前,先进行一些简单的准备工作:

1。把数据所在的EXCEL表另保存为DBF 4格式。

2。打开BCB,添加AdoTable(改名为DBFTable)和DataSource这两个控件

OK,准备工作,到此结束,剩下的就是打代码了

1。在Form_Load()事件中,加入以下代码:

AnsiString filepath=ExtractFilePath(FileName); //FileName为DBF文件名 AnsiString tablename=ExtractFileName(FileName).SubString(0,ExtractFileName(FileName).Length()-4);//去除文件的扩展名 //--------------------用于连接DBF文件-------------------------------- DBFTable->ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0; Password=/"/";Data Source=/""+filepath+"/"; Extended Properties=dbase 5.0;Persist Security Info=True"; DBFTable->TableName=tablename; DBFTable->Open();

2。新建一个类的成员函数void __fastcall ExcelToDB(TADOQuery *ADOQuery);

以下是函数的具体实现:

void __fastcall TDBFToDBForm::ExcelToDB(TADOQuery *ADOQuery) {//实现很简单,只是把DBFTable的数据逐项添加的本地的数据库 DBFTable->First(); for(int j=0;j<DBFTable->RecordCount;j++) { ADOQuery->Append(); for(int i=0;i<DBFTable->FieldCount;i++) ADOQuery->FieldByName(DBFTable->FieldList->Strings[i])->AsString=DBFTable->FieldByName(DBFTable->FieldList->Strings[i])->AsString; ADOQuery->Post(); DBFTable->Next(); } ShowMessage("导入成功!"); }

说明:DBFTable使用来装载EXCEL另保存的数据,而程序本身装载数据用的是ADOQuery(当然,你也可以改变),

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文共计564个文字,预计阅读时间需要3分钟。

如何将EXCEL数据导入不同数据库(如ACCESS、MSSQL)中?

pythonC++中实现将EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码在将EXCEL的数据导入数据库之前,先进行一些简单的准备工作:1. 将数据所在的EXCEL表另存为DBF格式。2. 打开BCB,添加以下代码:

如何将EXCEL数据导入不同数据库(如ACCESS、MSSQL)中?

// 添加必要的库#include #include

// 连接到数据库HCNTXT hCntxt;HCNTXN hCntxn;HENV hEnv;HSTMT hStmt;long result;

// 设置连接参数SQLRETURN retCode;SQLINTEGER cCode;SQLINTEGER iErrNo;SQLCHAR sErrMsg[512];SQLINTEGER iLen;

// 打开数据库连接retCode=SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &hEnv);retCode=SQLSetEnvAttr(hEnv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);retCode=SQLAllocHandle(SQL_HANDLE_DBC, hEnv, &hCntxt);retCode=SQLConnect(hCntxt, (SQLCHAR*)数据库服务器名, SQL_NTS, (SQLCHAR*)用户名, SQL_NTS, (SQLCHAR*)密码, SQL_NTS);

// 准备SQL语句SQLCHAR szSQL[1024];SQLPrepare(hStmt, (SQLCHAR*)INSERT INTO 表名 (列1, 列2, ...) VALUES (?, ?, ...), SQL_NTS);

// 执行SQL语句SQLINTEGER iValue1=1;SQLINTEGER iValue2=2;SQLBindParameter(hStmt, 1, SQL_PARAM_INPUT, SQL_C_LONG, SQL_INTEGER, 0, 0, &iValue1, 0, NULL);SQLBindParameter(hStmt, 2, SQL_PARAM_INPUT, SQL_C_LONG, SQL_INTEGER, 0, 0, &iValue2, 0, NULL);retCode=SQLExecute(hStmt);

// 关闭数据库连接SQLDisconnect(hCntxt);SQLFreeHandle(SQL_HANDLE_STMT, hStmt);SQLFreeHandle(SQL_HANDLE_DBC, hCntxt);SQLFreeHandle(SQL_HANDLE_ENV, hEnv);

C++ 中实现把EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码

在把EXCEL的数据导入数据库之前,先进行一些简单的准备工作:

1。把数据所在的EXCEL表另保存为DBF 4格式。

2。打开BCB,添加AdoTable(改名为DBFTable)和DataSource这两个控件

OK,准备工作,到此结束,剩下的就是打代码了

1。在Form_Load()事件中,加入以下代码:

AnsiString filepath=ExtractFilePath(FileName); //FileName为DBF文件名 AnsiString tablename=ExtractFileName(FileName).SubString(0,ExtractFileName(FileName).Length()-4);//去除文件的扩展名 //--------------------用于连接DBF文件-------------------------------- DBFTable->ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0; Password=/"/";Data Source=/""+filepath+"/"; Extended Properties=dbase 5.0;Persist Security Info=True"; DBFTable->TableName=tablename; DBFTable->Open();

2。新建一个类的成员函数void __fastcall ExcelToDB(TADOQuery *ADOQuery);

以下是函数的具体实现:

void __fastcall TDBFToDBForm::ExcelToDB(TADOQuery *ADOQuery) {//实现很简单,只是把DBFTable的数据逐项添加的本地的数据库 DBFTable->First(); for(int j=0;j<DBFTable->RecordCount;j++) { ADOQuery->Append(); for(int i=0;i<DBFTable->FieldCount;i++) ADOQuery->FieldByName(DBFTable->FieldList->Strings[i])->AsString=DBFTable->FieldByName(DBFTable->FieldList->Strings[i])->AsString; ADOQuery->Post(); DBFTable->Next(); } ShowMessage("导入成功!"); }

说明:DBFTable使用来装载EXCEL另保存的数据,而程序本身装载数据用的是ADOQuery(当然,你也可以改变),

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!