Что делать, чтобы избежать округления десятичной дроби в sqlbulkcopy с C # на sqlC#

Место общения программистов C#
Ответить
Anonymous
 Что делать, чтобы избежать округления десятичной дроби в sqlbulkcopy с C # на sql

Сообщение Anonymous »

У меня странная проблема. Я импортирую данные файла CSV в таблицу SQL с помощью sqlbulkcopy. Мой файл csv может иметь любой формат, поскольку я не могу определить столбцы в нем, а типы данных в нем, поскольку тот же столбец может иметь десятичные и текстовые значения, поэтому мне нужно передать значение как таковое в файл csv. Но по какой-то причине некоторые десятичные точки в файлах CSV округляются.

Код: Выделить всё

SqlConnection objConn = new SqlConnection(ConfigurationManager.ConnectionStrings["Live"].ConnectionString);
objConn.Open();
SqlBulkCopy objbulkinsert = new SqlBulkCopy(objConn);
objbulkinsert.DestinationTableName = "Mappingtable";
foreach (DataColumn column in csvData.Columns)
{
objbulkinsert.ColumnMappings.Add(column.ColumnName.ToString(), column.ColumnName.ToString());
}
objbulkinsert.BulkCopyTimeout = 0;
objbulkinsert.WriteToServer(csvData);
objConn.Close();

Это работает и для других файлов. Я не знаю, является ли файл csv проблемой, но, открыв его в блокноте, он показывает десятичную точку. Я прикреплю изображение полученного файла csv и результата sqloutput.
csvfile
SQLoutput
Ожидаемый результат: Например, данные файла CSV в таблице sql.

Подробнее здесь: https://stackoverflow.com/questions/792 ... arp-to-sql
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»