Вставить данные в сервер .....? - PullRequest
0 голосов
/ 11 января 2012

Я пытаюсь прочитать некоторые указанные столбцы таблицы Excel и с датой, мобильным номером и некоторыми столбцами, я могу прочитать столбцы, но при вставке значений в базу данных возникает проблема ........................

    public static DataTable columnNamessheet2(String excelFile)
    {
        string connString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelFile + ";Extended Properties='Excel 12.0;'";
        string connectionstring = "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DebitCare;Data Source=SSDEV7-HP\\SQLEXPRESS";

        using (OleDbConnection conn1 = new OleDbConnection(connString))
        {
            SqlConnection SqlConn1 = new SqlConnection(connectionstring);
            SqlConn1.Open();
            OleDbCommand odc1 = new OleDbCommand(string.Format("Select  LOAN_NO,DOB,DEALER_NAME,CUST_MOBILE_NO  FROM [ICICI TW DUMP$]"), conn1);
            conn1.Open();
            OleDbDataReader reader1 = odc1.ExecuteReader();
            int LOAN_NO = reader1.GetOrdinal("LOAN_NO");
            int DEALER_NAME = reader1.GetOrdinal("DEALER_NAME");
            int DOB = reader1.GetOrdinal("DOB");
            int CUST_MOBILE_NO = reader1.GetOrdinal("CUST_MOBILE_NO");
            while (reader1.Read())
            {
                string LnNumber = reader1.GetValue(LOAN_NO).ToString();
                string cname = reader1.GetValue(DEALER_NAME).ToString();
                string CDOB = reader1.GetValue(DOB).ToString();
                string CMobNo = reader1.GetValue(CUST_MOBILE_NO).ToString();
            }
            DataTable sheetSchema1 = reader1.GetSchemaTable();
            SqlBulkCopy sqlbulk = new SqlBulkCopy(SqlConn1);
            sqlbulk.DestinationTableName = "DebitCare";
            sqlbulk.ColumnMappings.Add("LnNumber", "CUSTOMER_LOAN_NO");
            sqlbulk.ColumnMappings.Add("cname", "CUSTOMER_NAME");
            sqlbulk.ColumnMappings.Add("CDOB", "DOB");
            sqlbulk.ColumnMappings.Add("CMobNo", "CUST_MOBILE_NO");
            sqlbulk.WriteToServer(reader1);
            return sheetSchema1;
        }

    }

1 Ответ

0 голосов
/ 11 января 2012

Тогда твоя линия

sqlbulk.ColumnMappings.Add("LnNumber", "CUSTOMER_LOAN_NO");

должен сказать

sqlbulk.ColumnMappings.Add( "LOAN_NO","CUSTOMER_LOAN_NO");

вот документы для этой утилиты: http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopycolumnmapping.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...