powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / проблема с DataAdapter.Fill в C#
7 сообщений из 7, страница 1 из 1
проблема с DataAdapter.Fill в C#
    #37623242
DeViLsssss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Проблема вот в чем: есть огромная dbf-таблица с 3000000 записей.
Необходимо обработать эту таблицу построчно.
Проблема в том, что при загрузке данных в Dataset вылезает ошибка нехватки памяти.
Различным образом пробуя различные условия на запрос всё обрабатывается, но есть один случай, когда как не делай выборку, все равно получается больше 500000 записей. И снова OutOfMemory.
Вопрос такой: есть ли какой-нибудь параметр Dataset, который позволяет обрабатывать записи запроса последовательно, например по 5000 штук (например: результат запроса 10000 записей. и датасет заполняется сначала первыми 5000 записями, все обрабатывается, потом, датасет заполняется вторыми 5000 записями и обрабатывается)?
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623270
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeViLsssss,

Этот боян недавно рвали.
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623417
AndreyRnD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а через DataReader сделать нельзя? так конечно дольше, но зато память не занимается.
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623427
DeViLsssss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SolYUtorDeViLsssss,

Этот боян недавно рвали.

Извиняюсь, искал немного не там..
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623429
DeViLsssss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreyRnDа через DataReader сделать нельзя? так конечно дольше, но зато память не занимается.

Сейчас все буду пробовать.
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623606
WitC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DeViLsssssSolYUtorDeViLsssss,

Этот боян недавно рвали.

Извиняюсь, искал немного не там..

Возможно не по теме, мало вникал, что нада. Но судя по "Баяну" - требуется динамическая отчистка кучи (????)
Когда-то давно нарыл в инете примерчик, сделал классом. Теперь, когда нужна очистка ОЗУ юзаю метод FlushMemory...

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<DllImportAttribute("kernel32.dll", EntryPoint:="SetProcessWorkingSetSize", ExactSpelling:=True, CharSet:=CharSet.Ansi, SetLastError:=True)> _
    Private Shared Function SetProcessWorkingSetSize(ByVal process As IntPtr, ByVal minimumWorkingSetSize As Integer, ByVal maximumWorkingSetSize As Integer) As Integer
    End Function

    ''' <summary>
    ''' Освобождаем память
    ''' </summary>
    Public Sub FlushMemory()
        GC.Collect()
        GC.WaitForPendingFinalizers()
        If Environment.OSVersion.Platform = PlatformID.Win32NT Then SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, -1, -1)
    End Sub
...
Рейтинг: 0 / 0
проблема с DataAdapter.Fill в C#
    #37623618
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WitCНо судя по "Баяну" - требуется динамическая отчистка кучи (????)Нет.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / проблема с DataAdapter.Fill в C#
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]