获取表'_xlnm#_FilterDatabase'已经存在

问题描述

我正在尝试使用oledb数据提供程序将excel导入sql服务器。在我的本地计算机上,代码运行良好,但是当我在实时服务器上测试代码时,出现错误Table '_xlnm#_FilterDatabase' already exists

我在本地调试代码,找不到任何_xlnm#_FilterDatabase。我无法理解为什么会收到此错误以及如何处理它。请帮助。

这是我的excel导入操作代码:

public ActionResult Upload(ImportExcel importExcel)
        {
            HospitalModel objModel = new HospitalModel();
            List<HospitalsViewModel> objViewModelList = new List<HospitalsViewModel>();
            //int sampleCollectionHospitalId = 0;
            //int sampleTestingHospitalId = 0;
            if (ModelState.IsValid)
            {
                string path = Server.MapPath("~/Content/Upload/" + importExcel.file.FileName);
                importExcel.file.SaveAs(path);

                //string excelConnectionString = @"Provider='Microsoft.ACE.OLEDB.12.0';Data Source='" + path + "';Extended Properties='Excel 12.0 Xml;IMEX=1'";
                string excelConnectionString = @"Provider='Microsoft.ACE.OLEDB.12.0';Data Source='" + path + "';Mode=ReadWrite;Extended Properties='Excel 12.0 Xml;HDR=Yes'";


                OleDbConnection excelConnection = new OleDbConnection(excelConnectionString);

                excelConnection.Open();
                string tableName = excelConnection.GetSchema("Tables").Rows[0]["TABLE_NAME"].ToString();

                if (tableName.ToString().Contains("FilterDatabase"))
                {
                    tableName = excelConnection.GetSchema("Tables").Rows[0]["TABLE_NAME"].ToString();
                    return RedirectToAction("Add");
                }

                excelConnection.Close();

                string sSqlCreateTable = "Create Table [" + tableName + "] ([SerialNumber] Int,[SampleId] nvarchar(100),[Name] nvarchar(100),[Age] decimal(5,2),[Sex] nvarchar(50),[Area] nvarchar(100),[Address] nvarchar(100),[MobileNumber] nvarchar(50),[State] nvarchar(50),[DateofSampleCollection] date,[DateofSampleTesting] date,[SampleCollectionHospital] nvarchar(50),[SampleTestingHospital] nvarchar(50),[Result] nvarchar(50),[DateofDischarge] date,[DateofDeceased] date)";
                excelConnection.Open();
                OleDbCommand cmd1 = new OleDbCommand(sSqlCreateTable,excelConnection);
                cmd1.ExecuteNonQuery();

                OleDbCommand cmd = new OleDbCommand("Select * from [" + tableName + "]",excelConnection);

                

                OleDbDataReader dReader;
                dReader = cmd.ExecuteReader();
                SqlBulkCopy sqlBulk = new SqlBulkCopy(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString);

                


                //Give your Destination table name
                sqlBulk.DestinationTableName = "PositiveCasesMaster";
                //Mapping

                sqlBulk.ColumnMappings.Add("SerialNumber","SerialNumber");
                sqlBulk.ColumnMappings.Add("Sampleid","SampleId");
                sqlBulk.ColumnMappings.Add("Name","Name");
                sqlBulk.ColumnMappings.Add("Age","Age");
                sqlBulk.ColumnMappings.Add("Sex","Sex");
                sqlBulk.ColumnMappings.Add("Area","Area");
                sqlBulk.ColumnMappings.Add("Address","Address");
                sqlBulk.ColumnMappings.Add("MobileNumber","MobileNumber");
                sqlBulk.ColumnMappings.Add("State","State");
                sqlBulk.ColumnMappings.Add("DateofSampleCollection","DateofSampleCollection");
                sqlBulk.ColumnMappings.Add("DateofSampletesting","DateofSampleTesting");
                sqlBulk.ColumnMappings.Add("Samplecollectionhospital","SampleCollectionHospital");
                sqlBulk.ColumnMappings.Add("Sampletestinghospital","SampleTestingHospital");
                sqlBulk.ColumnMappings.Add("Result","Result");
                sqlBulk.ColumnMappings.Add("DateofDischarge","DateofDischarge");
                sqlBulk.ColumnMappings.Add("DateofDeceased","DateofDeceased");

                sqlBulk.WriteToServer(dReader);
                excelConnection.Close();

                ViewBag.Result = "Successfully Imported";
            }
            return View();
        }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...