achraf boumessouer Ответов: 1

Я пытаюсь использовать sqlbulkcopy в C# для вставки двойного типа данных в набор данных SQL. Некоторые столбцы в таблице SQL определяются как тип int.


using (SqlBulkCopy bulkCopy =
                             new SqlBulkCopy(sqlConnectionString))
                  {
                      bulkCopy.DestinationTableName = "CDR";
                      bulkCopy.ColumnMappings.Add("RecordFileName", "RecordFileName");
                      bulkCopy.ColumnMappings.Add("Type-of-Recording", "TypeOfRecording");
                      bulkCopy.ColumnMappings.Add("ANumber", "ANumber");
                      bulkCopy.ColumnMappings.Add("BNumber", "BNumber");
                      bulkCopy.ColumnMappings.Add("BNumber-Type", "BNumberType");
                      bulkCopy.ColumnMappings.Add("Who-Pay", "WhoPay");
                      bulkCopy.ColumnMappings.Add("Call-Start-Date", "CallStartDate");
                      bulkCopy.ColumnMappings.Add("Call-Start-Time", "CallStartTime");
                      bulkCopy.ColumnMappings.Add("Call-Duration", "CallDuration");
                      bulkCopy.ColumnMappings.Add("Sample-Type", "SampleType");
                      bulkCopy.ColumnMappings.Add("Outgoing-Route", "OutgoingTrunk");
                      bulkCopy.ColumnMappings.Add("Incoming-Route", "IncommingTrunk");
                      bulkCopy.ColumnMappings.Add("Counter-Number", "CounterNumber");
                      bulkCopy.ColumnMappings.Add("Number-of-Pulse", "NumberofPulse");
                      bulkCopy.ColumnMappings.Add("Cause", "Cause");
                      bulkCopy.ColumnMappings.Add("Location", "Location");
                      bulkCopy.ColumnMappings.Add("Called-Party-Portability-Info", "CalledPartyPortabilityInfo");
                      bulkCopy.ColumnMappings.Add("Call-Reference", "CallReference");
                      bulkCopy.ColumnMappings.Add("Sequence-Number", "SequenceNumber");
                      bulkCopy.ColumnMappings.Add("Network-Call-Reference", "NetworkCallReference");
                      try
                      {
                          bulkCopy.WriteToServer(dr);
                      }
                      catch (Exception ex)
                      {
                          Console.WriteLine(ex.Message);
                      }
                      finally
                      {
                          dr.Close();
                      }


Что я уже пробовал:

How can I convert SQLbulkcopy.Columnmappings.Add into int before insert into SQL table?

Rick York

Если вы спрашиваете о коде C#, то вам следует использовать тег C#, а не тег C.

1 Ответов

Рейтинг:
2

Christian Graus

Почему бы вам не изменить тип столбца на double, затем сделать insert, а затем изменить его на int?