asp.net mvc c#sqkbulkcopy没有为一个或多个必需参数给出值

问题描述

| 我有这个错误
No Value given for one or more required parameter
错误的原因可能是什么。这是代码
  string excelConnectionString = @\"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\" + postdir + newFileNameOnServer + \"; Extended Properties=Excel 8.0\";


         using (OleDbConnection connection =new OleDbConnection(excelConnectionString))
         {
             OleDbCommand command = new OleDbCommand(\"Select Month,Year,CountryofExport,CountryofOrigin,Hs_code,quantity,Unit,CustomValue,Type FROM [qryTradeFlowforWeb$]\",connection);
             connection.Open();

         // Create DbDataReader to Data Worksheet
           using (DbDataReader dr = command.ExecuteReader())   // the error coming here
           {
               string sqlConnectionString = ConfigurationManager.ConnectionStrings[\"KMFConnectionString\"].ToString();
               SqlConnection conn = new SqlConnection(sqlConnectionString);
              using (SqlBulkCopy bulkCopy =  new SqlBulkCopy(sqlConnectionString))
              {
                bulkCopy.DestinationTableName = \"ExcelData\";
                bulkCopy.WriteToServer(dr);
              }
           }
      }
    

解决方法

        比较destinatin表Clolum列表与源表列列表是否相同。如果没有,则使用以下方式映射源和目标列的详细信息
bulkCopy.ColumnMappings.Add(\"SourceCol\",\"DestinationCol1\");
bulkCopy.ColumnMappings.Add(\"SourceCo2\",\"DestinationCol2\");
bulkCopy.ColumnMappings.Add(\"SourceCo3\",\"DestinationCol3\");
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...