Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在asp.net中将excel工作表导入sql数据库_C#_Asp.net_Sql Server_Excel - Fatal编程技术网

C# 如何在asp.net中将excel工作表导入sql数据库

C# 如何在asp.net中将excel工作表导入sql数据库,c#,asp.net,sql-server,excel,C#,Asp.net,Sql Server,Excel,我正在尝试将xls格式文件中的数据保存到sql数据库中。我尝试了以下代码,但它显示错误,外部表不是预期的格式。有人可以帮助我如何将xls格式文件中的数据保存到数据库中吗 code: protected void Button1_Click(object sender, EventArgs e) { string sheet1 = "asdf"; string path = MapPath("~/dataWorldcup/asdf.xls");

我正在尝试将xls格式文件中的数据保存到sql数据库中。我尝试了以下代码,但它显示错误,外部表不是预期的格式。有人可以帮助我如何将xls格式文件中的数据保存到数据库中吗

code:
 protected void Button1_Click(object sender, EventArgs e)
    {
        string sheet1 = "asdf";
        string path = MapPath("~/dataWorldcup/asdf.xls");
        OleDbConnection oconn1 = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;");
        OleDbCommand ocmd = new OleDbCommand("select * from [" + sheet1 + "$]", oconn1);
        SqlConnection sqlcon = new SqlConnection(ConfigurationManager.ConnectionStrings["consed"].ConnectionString);
        oconn1.Open();
        sqlcon.Open();
        OleDbDataReader odr = ocmd.ExecuteReader();
        SqlBulkCopy sqlBulk = new SqlBulkCopy(sqlcon);

        sqlBulk.DestinationTableName = "[Table]";
        sqlBulk.WriteToServer(odr);
        sqlcon.Close();
        oconn1.Close();
    }
错误:

数据库表:

excel文件:-asdf.xls


有人能帮我吗?这将是很大的帮助。

我的初步猜测是,您使用的Excel工作表版本的连接字符串不正确。这是我的猜测,因为当错误发生时,除了尝试连接到工作表之外,您甚至没有做任何事情

尝试搜索正确的连接字符串

编辑:


试试excel8.0;如果我的答案对您有帮助,请告诉我,而不是Excel 12.0?

有趣的问题。谢天谢地,这根本不是一个重复的问题。你给出的正确答案作为重复答案,甚至不能给出准确答案。看看评论。这个问题的答案可能与连接字符串有关,但很可能他们的连接字符串已经正确。检查问题!。问题似乎与excel中的范围和sql表之间的架构不匹配有关。大小和模式应该完全匹配,否则会出现异常。因为它是xls,我认为您的编辑是正确的。