外部 table 不是预期的格式 c#
External table is not in the expected format c#
我在谷歌搜索时看到了更多答案,但无法解决我的问题。
这是我编写的用于将 excel sheet 插入 sql 服务器 table.
的代码
string strConnection = ConfigurationManager.ConnectionStrings[0].ToString();
string path = @"D:/Projects/sample.xlsx";
string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\";";
OleDbConnection excelConnection = new OleDbConnection(excelConnectionString);
//Create OleDbCommand to fetch data from Excel
OleDbCommand cmd = new OleDbCommand("Select [Name], [City], [Address], [Designation] from [Sheet1$]", excelConnection);
excelConnection.Open();
OleDbDataReader dReader;
dReader = cmd.ExecuteReader();
SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection);
//Give your Destination table name
sqlBulk.DestinationTableName = "temp1";
sqlBulk.WriteToServer(dReader);
excelConnection.Close();
在执行行 "excelConnection.Open();" 时。我遇到错误 "External table is not in the expected format."
而"sample.xlsx"其实是一个ods格式的文件。我将其格式更改为 xlsx。
这段代码有什么问题。请建议我。
根据评论中的对话,您必须将 ODS
文件转换为 XLS
或 XLSX
格式,而不仅仅是重命名。您可以使用 Excel
或 Online tools
来转换 ODS
个文件。
我在谷歌搜索时看到了更多答案,但无法解决我的问题。 这是我编写的用于将 excel sheet 插入 sql 服务器 table.
的代码 string strConnection = ConfigurationManager.ConnectionStrings[0].ToString();
string path = @"D:/Projects/sample.xlsx";
string excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\";";
OleDbConnection excelConnection = new OleDbConnection(excelConnectionString);
//Create OleDbCommand to fetch data from Excel
OleDbCommand cmd = new OleDbCommand("Select [Name], [City], [Address], [Designation] from [Sheet1$]", excelConnection);
excelConnection.Open();
OleDbDataReader dReader;
dReader = cmd.ExecuteReader();
SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection);
//Give your Destination table name
sqlBulk.DestinationTableName = "temp1";
sqlBulk.WriteToServer(dReader);
excelConnection.Close();
在执行行 "excelConnection.Open();" 时。我遇到错误 "External table is not in the expected format."
而"sample.xlsx"其实是一个ods格式的文件。我将其格式更改为 xlsx。
这段代码有什么问题。请建议我。
根据评论中的对话,您必须将 ODS
文件转换为 XLS
或 XLSX
格式,而不仅仅是重命名。您可以使用 Excel
或 Online tools
来转换 ODS
个文件。