|
|
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Потребовалось динамически создать 1500 столбцов и потом последовательно вставлять около 800000 запичей Insert'ом структура MemTable создаётся нормально, но после вставки более 25000-30000 строки "Out memory" может подскажете как поступить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:44 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Перейти на 64 бита и накинуть в комп террабайт ОЗУ. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:46 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
винда десятка 64, оперативы на компе 42 Гб ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:46 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Так программу надо компилировать в 64 бита, а не систему. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:48 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
так сложилось, что это проблематично...а другие идеи есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP, а просто выполнять группами sql запросы на вставку? Тогда никаких out of memory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:59 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Забить на программирование, раз уж не получается на калькуляторе посчитать сколько ОЗУ займут желаемые данные. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 14:59 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
во время вставки записей память не поднималась выше 10ти ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:08 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Какие столбцы в таблице ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:10 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
asutp2 "а просто выполнять группами sql запросы на вставку? Тогда никаких out of memory" это же MemTable, как вставить группу строк? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:11 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP, а что, работать с базой без MemTable не умеешь?) ведь всё просто - создаешь соединение, создаешь для выполнения групповых запросов, формируешь sql-запросы группами и их выполняешь. И просто, и быстро, и решается твоя задача, без использования компа с гигантским количеством памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:15 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNPво время вставки записей память не поднималась выше 10ти Врёшь, для 32-х разрядных приложений практический предел - два гигабайта. Теоретический - три. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:18 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
столбцы создаются динамически... если выбрали интервал 01.01.2020-31.12.2020, то в итоге 366 дней * 4 столбца (необходимо для каждого дня года)... потом обрабатываю результат запроса (около 80000 строк)...посточно вставляю в MemTable при вставке более 25000 строк "Out memory" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:27 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
asutp2 если не трудно, напиши подробнее, как группой вставить в MemTable ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:29 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. потом вставляю построчно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:32 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP DM3.MemTB2.Close; DM3.MemTB2.FieldDefs.Clear; DM3.MemTB2.Fields.Clear; DM3.MemTB2.IndexDefs.Clear; for i1 := 1 to i2 do //i2= 366*4 begin DM3.MemTB2.FieldDefs.Add('DN' + tg2 + tm2_n + FormatDateTime('dd', dt1), ftInteger, 0, False); DM3.MemTB2.FieldDefs.Add('MM' + tg2 + tm2_n + FormatDateTime('dd', dt1), ftInteger, 0, False); DM3.MemTB2.FieldDefs.Add('DNs' + tg2 + tm2_n + FormatDateTime('dd', dt1), ftCurrency, 0, False); DM3.MemTB2.FieldDefs.Add('MMs' + tg2 + tm2_n + FormatDateTime('dd', dt1), ftInteger, 0, False); end; DM3.MemTB2.CreateDataSet; DM3.MemTB2.Open; потом вставляю построчно хоть как делай, но без перекомпилирования в 64 бита не получится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:40 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP Потребовалось динамически создать 1500 столбцов и потом последовательно вставлять около 800000 запичей Insert'ом структура MemTable создаётся нормально, но после вставки более 25000-30000 строки "Out memory" может подскажете как поступить? 1500 * 800000 = 1200000000 байт, это если каждое поле занимает 1 байт и ни на что память больше не тратится. Совсем "ку-ку"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 15:57 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Врёшь, для 32-х разрядных приложений практический предел - два гигабайта. Теоретический - три. Четыре ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:09 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP Потребовалось динамически создать 1500 столбцов и потом последовательно вставлять около 800000 запичей Insert'ом структура MemTable создаётся нормально, но после вставки более 25000-30000 строки "Out memory" может подскажете как поступить? Ты же не будешь отображать эту таблицу визуально, в гриде ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:20 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
"Ты же не будешь отображать эту таблицу визуально, в гриде ?" как догадался? :) как раз для этого и нужно...а так бы писал сразу Excel например ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:22 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
"хоть как делай, но без перекомпилирования в 64 бита не получится" жаль...может есть ещё идеи как получить желаемое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:23 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
я уж думаю, может создавать локально какой-нибуль файл на SQLlite например...писать туда и потом отобразить в гриде? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:25 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP "Ты же не будешь отображать эту таблицу визуально, в гриде ?" как догадался? :) как раз для этого и нужно...а так бы писал сразу Excel например Ну я конечно не читал твое ТЗ, но что-то уж очень экзотическое. Если нельзя отказаться от этого безобразия, то сделай одну реальный столбец, типа ID. А все остальные вычислимые. Когда юзер будет листать твою мегатаблицу, то содержимое столбцов будет подтягиваться из... откуда ты там собирался их брать при заполнении таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:26 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP я уж думаю, может создавать локально какой-нибуль файл на SQLlite например...писать туда и потом отобразить в гриде? Проверь максимальное количество столбцов в SQLite. Может он не сможет 1500. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:28 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Maxim RusovЧетыре Это если запускать программу на голом железе, без операционки. Дельфи на такое неспособна. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:37 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
"что-то уж очень экзотическое." ничего экзотического... есть около 600 000 строк реестра по транспорту в каждой строке есть две даты...начало работы путевого листа и конец 02.02.2020 10.02.2020 12.02.2020 14.02.2020 и т.д. так вот Заказчик хочет получить анализ работы за год например по каждой машине за каждый день Февраль 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21* 1 1 1 1 1 1 1 ......................................1 1 1 ничего экзотического...Заказчик всегда прав :( единицы нужны для того, что бы итоги по дню посчитать и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:41 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP "что-то уж очень экзотическое." ничего экзотического... есть около 600 000 строк реестра по транспорту в каждой строке есть две даты...начало работы путевого листа и конец 02.02.2020 10.02.2020 12.02.2020 14.02.2020 и т.д. так вот Заказчик хочет получить анализ работы за год например по каждой машине за каждый день Февраль 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21* 1 1 1 1 1 1 1 1 1 1 . ничего экзотического...Заказчик всегда прав :( единицы нужны для того, что бы итоги по дню посчитать и т.д. И заказчик будет задумчиво листать табличку с миллионом строк и тысячей столбцов ? Ну хрень же. Ну как бы то ни было, если по другому нельзя, то единственный вариант: как я писал выше подтягивать данные в столбцы динамически. Создавать табличку в SQLite конечно можно, но сдается мне, что миллиард ячеек будет заполняться очень не быстро. И после просмотра ее тут же удалять. Ох.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:47 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
да...мало того, Заказчик будет (и делает) фильтровать по госномеру и с задумчивым видом анализировать...так-то пока только приходит на ум писать сразу в Excel ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 16:49 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNPпока только приходит на ум писать сразу в Excel Он гикнется уже на 65000 строк. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 18:16 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP, у тебя размер записи фиксированный: используй файлы данных ("типизированные файлы паскаля"). Создай класс с интерфейсом массива ([строка, столбец]), и транслируй обращение к элементу в обращение к файлу. Работы на час, потом оценишь - что не так, быстродействие там или удобство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 18:28 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Я бы вообще отказался от базы данных и делал все в обычной памяти. Ну или как минимум как тут ранее советовали: через расчитываемые поля в таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 18:37 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Коррекция: под базой данных имелись в виду все виды датасетов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 18:57 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Можно сделать скользящее окно в базе. TFDTable такое умеет. И фильтровать и всё остальное будет, если правильно настроить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 19:26 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
количество столбцов динамическое что значит " и делал все в обычной памяти."? что значит "скользящее окно"? по подробнее можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 20:13 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov SergeyKNPпока только приходит на ум писать сразу в Excel Он гикнется уже на 65000 строк. с 2007-го Excel поддерживает миллион строк на листе ПыСы. И это правильно - выгружать в Excel. И пусть заказчик крутит там данные как угодно, тем более, что Excel для этого и предназначен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 20:19 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
defecator, А если эксель не сможет эту всю красоту открыть и завалится - сказать: "обращайтесь в майкрософт" ?:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 21:22 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
rgreat defecator, А если эксель не сможет эту всю красоту открыть и завалится - сказать: "обращайтесь в майкрософт" ?:) так это проблемы Экселя, правда ведь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 21:59 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
defecator, Таки да, но без денег будет не весело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 22:43 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
rgreat defecator, Таки да, но без денег будет не весело. можно на двадцать страниц экселя понавыгружать, а там пусть заказчик трахается, раз ему так хочется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2021, 23:06 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Достаточно просто уметь работать с файлом исходных данных. Не нужен ни эксель, ни мемтабле. Нужен программист. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 01:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
defecator rgreat defecator, А если эксель не сможет эту всю красоту открыть и завалится - сказать: "обращайтесь в майкрософт" ?:) так это проблемы Экселя, правда ведь ? Это проблема Майкрософта... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 06:20 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
defecator Dimitry Sibiryakov пропущено... Он гикнется уже на 65000 строк. с 2007-го Excel поддерживает миллион строк на листе ПыСы. И это правильно - выгружать в Excel. И пусть заказчик крутит там данные как угодно, тем более, что Excel для этого и предназначен Ещё эксель умеет очень быстро открывать гигантские html-файлы с таблицами, на которых любой браузер тупо виснет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 08:58 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
DmSer Ещё эксель умеет очень быстро открывать гигантские html-файлы с таблицами, на которых любой браузер тупо виснет. и спокойно сожрёт (сильно большие не пробовал открывать), но вспоминая работу с родными файлами на сотни мегабайт... ничего приятного, в общем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 14:43 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP> форум для этого и предназначен, что бы SergeyKNP> задавать вопросы, если что-то не получается Для этого надо задавать конкретные вопросы, а не просить готовое решение, да ещё несколько раз... В частности, опишите получше исходную задачу - например, зачем в гриде отображать 800000 записей с 1500 столбцов (и даже если зачем-то нужно - зачем промежуточный memtable), почему нельзя записывать данные как ArrayDML или просто пачками и т.д. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 14:47 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP, опиши входные и выходные данные - так всем будет легче ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 16:00 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
DmSer defecator пропущено... с 2007-го Excel поддерживает миллион строк на листе ПыСы. И это правильно - выгружать в Excel. И пусть заказчик крутит там данные как угодно, тем более, что Excel для этого и предназначен Ещё эксель умеет очень быстро открывать гигантские html-файлы с таблицами, на которых любой браузер тупо виснет. У ТС "чисто данных" - многие гигабайты, а уж в html формате вообще грустно будет. Маловероятно, что иксель такое осилит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 17:09 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Я хз, почему нельзя сделать табличку в бд и из нее делать по запросу клиента выборки по одному госномеру и диапозону дат. Листинг всего и сразу тут явно ни к чему. Да и 1500 столбцов в ширину выглядят явно избыточными. Ну невозможно адекватно анализировать нечто не влезающее даже в десяток экранов по ширине. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 18:05 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP да...мало того, Заказчик будет (и делает) фильтровать по госномеру и с задумчивым видом анализировать...так-то пока только приходит на ум писать сразу в Excel Так пусть скажет что надо в результате анализа и сделайте ему десяток отчетов результатов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2021, 18:14 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
входные данные конкретны: FDMemTable как вставить 800000 записей с 1500 столбцов вопрос "зачем" не стоит, так хочет Заказчик делаю выгрузку сразу в Excel СПС всем адекватным, за ответы по делу и вообще за желание помочь. Удачи всем, вопрос закрыт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 01:29 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Входные данные это Заказчик хочет получить анализ работы за год например по каждой машине за каждый день А таблица с миллиардом ячеек - скорее уже ваш идиотизм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 07:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP входные данные конкретны: FDMemTable как вставить 800000 записей с 1500 столбцов вопрос "зачем" не стоит, так хочет Заказчик Очень сомневаюсь, что Заказчик что либо знает о FDMemTable, поэтому в этом моменте вы явно врёте лукавите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 08:23 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
А исходные данные - они в каком виде существуют и как пополняются? - текстовый файл? - база? - что-то еще? И можно конкретизировать, какой физический смысл у записи, почему их 800тысяч, и откуда 1500 полей в записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 09:40 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP входные данные конкретны: FDMemTable как вставить 800000 записей с 1500 столбцов вопрос "зачем" не стоит, так хочет Заказчик делаю выгрузку сразу в Excel СПС всем адекватным, за ответы по делу и вообще за желание помочь. Удачи всем, вопрос закрыт. Во-первых, FDMemTable не является входными данными, вы не описали как именно и чем он заполнен. Во-вторых, потрудитесь сообщить форуму, как именно вы закрыли вопрос, чтобы в будущем все форумчане знали, как бороться с подобной проблемой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 09:49 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Aleksandr Sharahov потрудитесь сообщить форуму, как именно вы закрыли вопрос Подозреваю, что обиделся и гордо ушел в закат :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 10:05 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Fr0sT-Brutal Aleksandr Sharahov потрудитесь сообщить форуму, как именно вы закрыли вопрос Подозреваю, что обиделся и гордо ушел в закат :) так он же написал - делаю выгрузку сразу в Excel ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 10:09 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
defecator Fr0sT-Brutal пропущено... Подозреваю, что обиделся и гордо ушел в закат :) так он же написал - делаю выгрузку сразу в Excel Нет, он так и не написал: 1) постановку задачи в формулировке заказчика, а не свое видение, 2) формат данных на входе, 3) формат данных на выходе, 4) как преобразовал данные из одного формата в другой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 10:34 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Сага о X, Y и Z...Однажды Новичок захотел сделать X. Но поскольку Новичок был новичком, X с ходу у него сделать не получилось... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 10:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Если подойти к задаче все так же влоб, то например: Данные засунуть в типизированный файл (файлы). Отображать с помощью VirtualVreeView (он умеет прикидываться гридом), дефолтным для этого дерева способом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 12:16 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP> входные данные конкретны: FDMemTable SergeyKNP> как вставить 800000 записей с 1500 столбцов Это неправильные входные данные. Но в такой постановке - сделать соотв. запрос Insert Into Table Values (:p1, :p2, ... :p1500), расчитать (вручную или ArrayDML) сколько таких запросов (N) можно выполнять за один вызов Execute ну и гонять цикл 800.000/N. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 13:41 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Вы путаете отображение и обработку значений. Это разные задачи. Вы на экране из матрицы 800000х1500 сможете увидеть только небольшую часть (окошко). Даже если сделать очень мелко, по 8х8 пикселей на цифру, вы при разрешении 1900х1080 сможете увидеть только матрицу 240х135 цифр. Следовательно для обработки данных вам подойдет любая база данных, а с отображением нужной части этих данных прекрасно справится DBGrid ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 13:44 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Aleksandr Sharahovпотрудитесь сообщить форуму, как именно вы закрыли вопрос, План был простой: 1. Загнать данные в таблицу. 2. Подключить в ней TCxGrid. 3. Вызвать его метод экспорта в Эксель. Теперь придётся обходиться без первых двух пунктов. И по поводу исходных данных он тоже писал: если выбрали интервал 01.01.2020-31.12.2020, то в итоге 366 дней * 4 столбца (необходимо для каждого дня года)... потом обрабатываю результат запроса (около 80000 строк)... ...... есть около 600 000 строк реестра по транспорту в каждой строке есть две даты...начало работы путевого листа и конец 02.02.2020 10.02.2020 12.02.2020 14.02.2020 и т.д. так вот Заказчик хочет получить анализ работы за год например по каждой машине за каждый день Февраль 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21* 1 1 1 1 1 1 1 .......................................1 1 1 Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 13:51 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov> План был простой: Dimitry Sibiryakov> 1. Загнать данные в таблицу. Вопрос "откуда загоняются данные" остался открытым, ИМХО. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 13:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамВопрос "откуда загоняются данные" остался открытым, ИМХО. Я для кого специально отквотил?.. Или ты тоже читаешь только первые три строчки каждого сообщения?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 13:56 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
DS> Я для кого специально отквотил?.. Ну вот и перечитай процитированное. По его описанию получается, что БД уже есть и надо не вставлять, а читать. DS> Или ты тоже читаешь только первые три строчки каждого сообщения?.. Почему три? Две, чего мелочиться... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:01 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Aleksandr Sharahovпотрудитесь сообщить форуму, как именно вы закрыли вопрос, План был простой: 1. Загнать данные в таблицу. 2. Подключить в ней TCxGrid. 3. Вызвать его метод экспорта в Эксель. Теперь придётся обходиться без первых двух пунктов. И по поводу исходных данных он тоже писал: если выбрали интервал 01.01.2020-31.12.2020, то в итоге 366 дней * 4 столбца (необходимо для каждого дня года)... потом обрабатываю результат запроса (около 80000 строк)... ...... есть около 600 000 строк реестра по транспорту в каждой строке есть две даты...начало работы путевого листа и конец 02.02.2020 10.02.2020 12.02.2020 14.02.2020 и т.д. так вот Заказчик хочет получить анализ работы за год например по каждой машине за каждый день Февраль 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21* 1 1 1 1 1 1 1 .......................................1 1 1 Ну, раз ты, за него отвечаешь, продолжай: 1) где там в исходных данных идентификатор "каждой машины"? 2) почему на каждый день года приходится 4 столбца? 3) всегда нужен итог по 1 году? 4) что заказчик будет делать с этими единицами? что в конце концов что надо получить по каждой машине? 5) почему нельзя программе поручить это сделать? 6) почему не подходит простейшая программа, которая за один проход по файлу сразу получит результат? нафига что-то куда-то грузить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:04 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Aleksandr Sharahov6) почему не подходит простейшая программа, которая за один проход по файлу сразу получит результат? нафига что-то куда-то грузить? Повторюсь - я бы уточнил что за файл и откуда. Ибо это похоже на выгрузку из другой БД, т.е. тоже лишнее звено. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:22 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамПовторюсь - я бы уточнил что за файл и откуда. Из фантазии Александра. У ТСа ясно написано "запрос". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:30 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Гаджимурадов РустамПовторюсь - я бы уточнил что за файл и откуда. Из фантазии Александра. У ТСа ясно написано "запрос". океюшки, заменим "по файлу" на "по результату запроса", от этого вопросы никуда не делись ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:34 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
DS> У ТСа ясно написано "запрос". Именно. Т.е.некая БД учёта транспорта, в которой среди прочего хранится инфа о путевых листах. Для анализа которой нафиг не нужно (пока неочевидно обратное) никакая выгрузка и тем более вставка. Эта аналитика/отчёт по машинам делаются простым запросом (ну или ХП/блоком) из самой БД. Клиентская часть тут если и нужна то для отображения, сохранения, печати и пр. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:48 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамДля анализа которой нафиг не нужно (пока неочевидно обратное) никакая выгрузка и тем более вставка. Рустам, уж ты-то должен знать особенности контингента своего раздела. Отображать информация иначе чем в гриде они не умеют. Отображать информацию в гриде иначе чем из TDataSet они не умеют. Складываем 2 + 2 и получаем необходимость вставки результата запроса в датасет для отображения. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 15:54 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
> Отображать информация иначе чем в гриде они не умеют. В задаче требуется не отображать, а что-то там считать ("анализировать!"). > Складываем 2 + 2 и получаем необходимость вставки результата > запроса в датасет для отображения. Вовсе нет. Получаем необходимость составления запроса, который эту простыню в 800к*1,5к будет в грид засасывать. :) И вообще, не умеют - надо подсказывать/учить/пинать в нужном направлении. :) Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 16:58 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Гаджимурадов РустамДля анализа которой нафиг не нужно (пока неочевидно обратное) никакая выгрузка и тем более вставка. Рустам, уж ты-то должен знать особенности контингента своего раздела. Отображать информация иначе чем в гриде они не умеют. Отображать информацию в гриде иначе чем из TDataSet они не умеют. Складываем 2 + 2 и получаем необходимость вставки результата запроса в датасет для отображения. Чёй-та? Мы - умныя! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 17:10 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, он умный, но вредный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 19:40 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov Dimitry Sibiryakov Врёшь, для 32-х разрядных приложений практический предел - два гигабайта. Теоретический - три. Четыре Три. При запуске NT с ключиком. Один - система палюбасу себе отнимет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 21:22 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Зачем обсуждать бредовую задачу ? 1500 колонок - лютый бред, больных людей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2021, 22:46 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
L_argo, я для прикола сделал 256 столбцов в экселе. Упс, а он больше не может! Ну да ладно. Встал на столбец 1, и нажал стрелку вправо. Мелькает быстро, на 256 столбцов потребовалось 10 секунд. 1500 столбцов скроллировались бы минуту! Это просто скролл, без рассматривания. Собственно, отмаз "так хочет заказчик" не работает, потому что, возможно, заказчик не представляет себе, как это может выглядеть, и как это работать. Для примера ему можно было бы показать эксель с 256 столбцов, ну и, парой десятков тысяч строк. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 00:52 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Ну может у него заказчик душевнобольной и, заодно, всегда прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 01:41 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
kdv я для прикола сделал 256 столбцов в экселе. Упс, а он больше не может! Пора переходить с Excel 2003 на хотя бы Excel 2007 Код: sql 1. kdv 1500 столбцов скроллировались бы минуту! Для тех кто не хочет ждать, придумали Сколлер. Вы же не говорите что вниз долго жать 65536 строк !!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 07:35 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP "что-то уж очень экзотическое." ничего экзотического... есть около 600 000 строк реестра по транспорту в каждой строке есть две даты...начало работы путевого листа и конец 02.02.2020 10.02.2020 12.02.2020 14.02.2020 и т.д. так вот Заказчик хочет получить анализ работы за год например по каждой машине за каждый день Февраль 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21* 1 1 1 1 1 1 1 ......................................1 1 1 ничего экзотического...Заказчик всегда прав :( единицы нужны для того, что бы итоги по дню посчитать и т.д. да...мало того, Заказчик будет (и делает) фильтровать по госномеру и с задумчивым видом анализировать...так-то столбцы создаются динамически... если выбрали интервал 01.01.2020-31.12.2020, то в итоге 366 дней * 4 столбца (необходимо для каждого дня года)... потом обрабатываю результат запроса (около 80000 строк)...посточно вставляю в MemTable при вставке более 25000 строк "Out memory" Я так понял что заказчик хочет видеть что-то типа такого: "1" - означает что этот день входит в путевой лист автомобиля, день в командировке Код: plsql 1. 2. 3. 4. Что бы видеть каждый день года, нужно всего лишь 365 ячеек + шапка. И заполнить это можно либо сразу запросом, либо запросом к процедуре, либо из запроса кодом на Delphi. Итого еще можно просуммировать, по конкретной машине - количество командировочных дней за месяц, за год По нескольким автомобилям сразу - в такое же количество ячеек только там будет не "1" по одной машине а N по всем учтенным машинам за этот день. Что бы посчитать командировочных дней по машине, помесячно, погОдно, требуется еще меньше ячеек. Если задача состоит в том что бы извлечь из базы данные для дальнейшего автономного хранения, просмотра, анализа - это отдельный вопрос, но и решается он примерно аналогично. Нет смысла городить гигантскую во всех размерностях таблицу, да еще и пытаться ее при этом видеть целиком. ПоднЕвную табличку можно рисовать "одна строка=месяц" а можно в виде календаря "одна строка = неделя". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 09:16 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
А если нужно наглядно видеть по дням, то для этого есть графики и диаграммы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 10:28 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
И кроме того диаграммы рисуются непосредственно по диапазонам, что сильно сокращает потребляемую память. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 13:35 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Вы так рассуждаете, будто не сталкивались с "продвинутыми" пользователями экселя. Разного рода аналитиками, которые могут кубики в нем строить и желают их крутить как им вздумается. Они обычно хотят максимум сырых данных. Потом, конечно, могут и отчетик потребовать в нужном разрезе, но это потом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 14:51 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Для таких пользователей ставится ODBC драйвер и выдаются права на чтение БД непосредственно. А дальше уж они сами хоть Ёксель, хоть ПоверьБИ пусть крутят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 14:57 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
ну насмешили...зачем...почему... правильно выше сказали, а если заказчик всегда прав или ещё что? забейте...выгружаю в екZель (согласовал с заказчиком)... ПыСы: аналитика двойная, по дням(когда работал) и по суммам (сколько затрат) + итоги по месяцу + итог за год +несколько столбцов с наименованиями прилагаю для наглядности старый рабочий вариант, когда данных было не очень много ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 15:33 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP, это ж охренеть, как круто вставил в FDMemTable 800000 записей с 1500 столбцами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 15:59 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Закопайте уже эту стюардессу! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 16:02 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP ну насмешили...зачем...почему... правильно выше сказали, а если заказчик всегда прав или ещё что? забейте...выгружаю в екZель (согласовал с заказчиком)... ПыСы: аналитика двойная, по дням(когда работал) и по суммам (сколько затрат) + итоги по месяцу + итог за год +несколько столбцов с наименованиями прилагаю для наглядности старый рабочий вариант, когда данных было не очень много Куб из DevExpress такое строит легко и непринуждённо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 16:31 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Ну может у него заказчик душевнобольной и, заодно, всегда прав. офф: На правах городской легенды: Когда в одном из техн. ВУЗов поставили первый модем для интернета (примерно 89-90гг), то тут же явился местный особист и потребовал бумажные(!) распечатки всего(!), что проходит через модем. пысы: мне кажется это был тот самый заказчик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 20:38 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
что вы пристали к заказчику? есть такое слово "надо". мне самому было интересно, возможно ли такое реализовать выяснилось, что не так всё просто (DevExpress мне просто не нравиться в принципе...не в обиду) поэтому решено, что выгружать всё буду в еХель (получается даже быстрее) Успокойтесь уже и закройте тему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2021, 22:59 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP что вы пристали к заказчику? есть такое слово "надо". Осталось непонятным что конкретно надо заказчику, с какой целью, и каким образом он это будет применять. И наверняка уже существует какой-то способ анализа и сейчас, что это за способ и чем он заказчика не устраивает. Интересно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2021, 04:28 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
SergeyKNP> ПыСы: аналитика двойная, по дням(когда работал) SergeyKNP> и по суммам (сколько затрат) + итоги по месяцу + SergeyKNP> итог за год +несколько столбцов с наименованиями Есть же кубы и пр. ОЛАПы... В конце концов, ему завтра кроме этой 80к*1,5к и другие "идеи" в голову придут, уже не по путевым листам, а по чему-нибудь другому. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2021, 09:44 |
|
||
|
FDMemTable как вставить 800000 записей с 1500 столбцов
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам SergeyKNP> ПыСы: аналитика двойная, по дням(когда работал) SergeyKNP> и по суммам (сколько затрат) + итоги по месяцу + SergeyKNP> итог за год +несколько столбцов с наименованиями Есть же кубы и пр. ОЛАПы... В конце концов, ему завтра кроме этой 80к*1,5к и другие "идеи" в голову придут, уже не по путевым листам, а по чему-нибудь другому. Судя по 22265882 , заказчику был нужен результат в удобоваримой форме, а 80K*1.5K - это как раз была идея автора топика )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2021, 10:05 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2037693]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
140ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
113ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 507ms |

| 0 / 0 |
