Проблема с памятью при извлечении записи 25 лакхов из Mysql и импорте в CSV файл
Привет
Я извлекаю 25 лакхов (250 000) записей из моего sql, и эти записи имеют 5 столбцов в таблице..
извлеченные записи импортируются в CSV-файл...
для 6 или 7 лакхов записывает его извлечение и экспортирует в csv-файл..
но для более чем 20 лакхов записей его выбрасывание системы из памяти исключение..
я использую этот код для экспорта записей в CSV...
public static void ExportDataTableToCSV(DataTable dt, string FileName, string Heading, HttpResponse objResponse) { System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.AppendLine(Heading); string[] columnNames = dt.Columns.Cast<DataColumn>(). Select(column => column.ColumnName). ToArray(); sb.AppendLine(string.Join(",", columnNames)); foreach (DataRow row in dt.Rows) { string[] fields = row.ItemArray.Select(field => field.ToString().Replace(',',' ')). ToArray(); sb.AppendLine(string.Join(",", fields)); } objResponse.Write(sb.ToString()); objResponse.ContentType = "application/CSV"; objResponse.AddHeader("content-disposition", "attachment; filename="+FileName+".CSV"); objResponse.Flush(); objResponse.End(); }
Моя проблема заключается в том, что я не могу получить огромное количество записей, таких как 25 лакхов из mysql и
пожалуйста, дайте мне любые другие методы для экспорта извлеченных записей...
Есть ли какой-либо вариант заполнить данные с помощью методов json или любых других методов..пожалуйста, предложите мне некоторые ответы...
Im импортирует 90 МБ данных из базы данных...
BillWoodruff
Сколько у тебя памяти ?
Member 9700867
90 МБ...
Member 9700867
90 МБ и 25 лакхов записи...
Mohibur Rashid
В английском языке нет такого слова, как Lakhs. Вы хотели сказать 2500,000
Hrishikesh
ПРОСТО К ТВОЕМУ СВЕДЕНИЮ:
https://en.oxforddictionaries.com/definition/lakh
NotPolitcallyCorrect
Просто к твоему сведению. Перевод индийского слова на английский не делает его английским. Лакх-индиец, а не англичанин.
Richard MacCutchan
Вы когда-нибудь слышали о законах физики? Вы не можете просто прочитать любой объем данных в память и ожидать, что ваше приложение будет работать без проблем. Разбейте его на управляемые части и обрабатывайте небольшие количества за один раз.
Hrishikesh
Это слово было добавлено в словарь с использованием санскритского языка в качестве ссылки на перевод, присутствие которого в Оксфордском словаре делает его английским словом. Английский язык имеет большую часть своего языка, производного от греческого и латинского. Итак, мой друг английский-это развивающийся язык. Кроме того, рекомендации веб-сайта довольно ясны, что не у всех основной язык-английский, поэтому джентльмен, который пытается исправить свой язык, должен попытаться помочь ему в этом вопросе, чем исправить язык других.
Mohibur Rashid
Я знаю эту информацию, но на практике очень мало людей знает именно это слово. Вы должны понять, я не оскорбляю его и не пытаюсь учить английскому языку, я тоже не силен в этом. Он нуждался в помощи, он мог бы использовать правильное слово, которое было бы легко расшифровано другими. Никакого оскорбления.
Также обратите внимание, что это старая тема и старый комментарий.