将Excel电子表格数据导入SQL Server数据库表 [英] Import Excel Spreadsheet Data into SQL Server Database Table
问题描述
大家好,
我试图将数据从Excel电子表格导入到SQL Server数据库表中,尽管存在一些问题.这是我正在使用的代码:
私人 无效 Button1_Click( 对象 发件人,System.EventArgs e)
{
//与Excel工作簿的连接字符串
string excelConnectionString = @" Provider = Microsoft.Jet.OLEDB. 4.0;数据源= Book1.xls;扩展属性=''Excel 8.0; HDR = YES;";";
private void Button1_Click(object sender, System.EventArgs e)
{
// Connection String to Excel Workbook
string excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Book1.xls;Extended Properties=""Excel 8.0;HDR=YES;""";
//使用创建与Excel工作簿的连接
(OleDbConnection连接= 新 OleDbConnection(excelConnectionString))
{
//OleDbCommand命令=新的OleDbCommand(选择ID,数据来自[Data $]",连接);
connection.Open();
OleDbCommand命令= new OleDbCommand(选择ID,数据FROM [Data $]" ;,连接);
//创建DbDataReader到Data Worksheet
使用 (DbDataReader dr = command.ExecuteReader())
{
//SQL Server连接字符串
string sqlConnectionString ="Data Source = .;初始目录=测试;集成安全性= True";
// Create Connection to Excel Workbook
using (OleDbConnection connection = new OleDbConnection(excelConnectionString))
{
//OleDbCommand command = new OleDbCommand ("Select ID,Data FROM [Data$]", connection);
connection.Open();
OleDbCommand command = new OleDbCommand ("Select ID,Data FROM [Data$]", connection);
// Create DbDataReader to Data Worksheet
using (DbDataReader dr = command.ExecuteReader())
{
// SQL Server Connection String
string sqlConnectionString = "Data Source=.; Initial Catalog=Test;Integrated Security=True";
//批量复制到SQL Server
使用 (SqlBulkCopy bulkCopy = 新 SqlBulkCopy(sqlConnectionString))
{
bulkCopy .DestinationTableName ="ExcelData";
bulkCopy.WriteToServer(dr);
}
}
connection.Close();
}
}
使用此代码,我遇到了几个错误,主要的两个是DbDataReader& SqlBulkCopy.该错误提到尽管我根据对msdn的搜索使用的是正确的引用,但我仍可能缺少程序集引用.这些是我的程序集引用:
使用 System.Data.OleDb;
使用 System.Data.SqlClient;
使用 System.Data.Common;
任何人都知道这里有什么问题,或者如果有更好的方法来完成这些任务,请告诉我.
谢谢.
推荐答案
尝试执行代码时遇到什么错误?
What are the errors you are getting while trying executing your code?
这篇关于将Excel电子表格数据导入SQL Server数据库表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!