|
|
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Хочу сделать экспорт данных из БД, но т.к. процесс довольно медленный - хочу засунуть это в анонимный поток. Вопрос, я правильно понял как это делается, или можно сделать как-то лучше? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 22:18 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Не могу понять зачем у тебя LConnection сидит за пределами треда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 22:21 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
rgreat Не могу понять зачем у тебя LConnection сидит за пределами треда. Чтобы анонимный метод захватил его, а не глобальный fdConnection. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 22:33 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
alekcvp, как правило, современные СУБД хорошо умеют делать экспорт. Delphi для этого не нужен. Если только "дёрнуть" хранимку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 22:44 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
alekcvp, Так внутри треда бы и создал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 22:56 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko alekcvp, как правило, современные СУБД хорошо умеют делать экспорт. Delphi для этого не нужен. Если только "дёрнуть" хранимку Мне нужно экспортнуть сложный запрос, чтобы было "как на экране", с подсветкой строк и т.п. rgreat alekcvp, Так внутри треда бы и создал. Хм, я просто думал что он тогда fdConnection захватит, до конца исполнения потока. Правда хз чем это плохо :) Ну и если что-то пойдёт не так, то максимальное количество возможных исключений хотелось бы обработать вне потока. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:09 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
[quote автор] alekcvp Gerasimenko alekcvp, как правило, современные СУБД хорошо умеют делать экспорт. Delphi для этого не нужен. Если только "дёрнуть" хранимку Мне нужно экспортнуть сложный запрос, чтобы было "как на экране", с подсветкой строк и т.п. ... Экспорт, расцветка и отображение как на экране... Что же вы вкладываете в понятие экспорт? И какая у Вас СУБД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:13 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
alekcvp Ну и если что-то пойдёт не так, то максимальное количество возможных исключений хотелось бы обработать вне потока. Да и смысл делать 2 обработчика и в потоке и нет, если можно только один в потоке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:14 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
rgreat Не могу понять зачем у тебя LConnection сидит за пределами треда. А я не могу понять, почему Commit идёт после закрытия коннекта. =8-[ ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:38 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
авторХм, я просто думал что он тогда fdConnection захватит, до конца исполнения потока. Правда хз чем это плохо :) Охота связываться с анонимным потоком и гадать захватится / не захватится? Классический TThread чем не угодил? И там и тут масса граблей, но классика хоть нагляднее смотрится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:43 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
DmSer, Однако, как это стильно, модно, молодежно!)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:50 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
DmSer, Я бы тогда лучше TTask предложил, если уж есть тяга к анонимным методам. Удобней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2020, 23:50 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko авторпропущено... Экспорт, расцветка и отображение как на экране... Что же вы вкладываете в понятие экспорт? И какая у Вас СУБД? Firebird, ну это больше отчёт, чем экспорт, люди хотят работая в программе в какой-то момент получить в экселе табличку точь-в-точь как на экране, чтобы, например, по почте её кому-нибудь отправить. авторВсе исключения у тебя будут в потоке и так. Да и смысл делать 2 обработчика и в потоке и нет, если можно только один в потоке? Принято, перенёс. авторА я не могу понять, почему Commit идёт после закрытия коннекта. =8-[ ] Закрытие после добавил, коммит убрать забыл 😁 авторОхота связываться с анонимным потоком и гадать захватится / не захватится? Классический TThread чем не угодил? И там и тут масса граблей, но классика хоть нагляднее смотрится. Лень писать класс, ради одного вызова... да и вообще, зачем тогда нужны анонимные потоки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 00:13 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
alekcvp, Excel умеет забирать данные из БД и это будет существенно быстрее. Думаю, и FB тоже умеет в Excel экспортировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 00:32 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko, FB не умеет, но и не должен куда то там что-то экспортировать, ибо не серверное это дело. Но вот FR, например, имеет достаточно отлаженный набор фильтров в разного рода популярные форматы. И вот именно это, на мой взгляд, в данном случае самый цивилизованный путь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 00:40 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Vlad F Gerasimenko, FB не умеет, но и не должен куда то там что-то экспортировать, ибо не серверное это дело. Но вот FR, например, имеет достаточно отлаженный набор фильтров в разного рода популярные форматы. И вот именно это, на мой взгляд, в данном случае самый цивилизованный путь. глянул, для интересу... http://www.ibase.ru/impexp/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 00:51 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko alekcvp, Excel умеет забирать данные из БД и это будет существенно быстрее. Думаю, и FB тоже умеет в Excel экспортировать. Иксель импортировать данные из БД умеет только когда есть источник odbc или oledb, или из древних db-форматов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 00:56 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko Vlad F Gerasimenko, FB не умеет, но и не должен куда то там что-то экспортировать, ибо не серверное это дело. Но вот FR, например, имеет достаточно отлаженный набор фильтров в разного рода популярные форматы. И вот именно это, на мой взгляд, в данном случае самый цивилизованный путь. глянул, для интересу... http://www.ibase.ru/impexp/ Ещё раз, - сервер - не умеет. Инструменты некоторые, да, умеют экспортировать ИЗ него, с разной степенью успеха. Ты уж давай, жена, отличай разврат от ситуации. (с)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 01:06 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Vlad F Gerasimenko Ещё раз, - сервер - не умеет. Инструменты некоторые, да, умеют экспортировать ИЗ него, с разной степенью успеха. Ты уж давай, жена, отличай разврат от ситуации. (с)) т.е. ты согласен, что экспортировать можно. на этом все: давай, до свидания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 01:08 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
А зачем выборку запускать в транзакции? Ну и цикл бесконечный понравился тоже конечно))) Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 01:15 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko Vlad F пропущено... Ещё раз, - сервер - не умеет. Инструменты некоторые, да, умеют экспортировать ИЗ него, с разной степенью успеха. Ты уж давай, жена, отличай разврат от ситуации. (с)) т.е. ты согласен, что экспортировать можно. на этом все: давай, до свидания Все дело в том, что я с твоим первоначальным посылом, в принципе, не согласен. А так, экспортировать можно и нужно, надо только уметь как. А ежели бы ты действительно хотел "до свидания", то мог бы уже и сам не продолжать упорствовать, считаю.)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 01:28 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Gerasimenko Vlad F пропущено... Ещё раз, - сервер - не умеет. Инструменты некоторые, да, умеют экспортировать ИЗ него, с разной степенью успеха. Ты уж давай, жена, отличай разврат от ситуации. (с)) т.е. ты согласен, что экспортировать можно. на этом все: давай, до свидания Нельзя. В системе, кроме икселя, должны быть "драйвера"(см.выше), специфичные для данной СУБД. Иксель не умеет коннектиться к FB, и драйвера в поставку не входят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 01:45 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Relic Hunter А зачем выборку запускать в транзакции? Ну и цикл бесконечный понравился тоже конечно))) А FireDAC умеет запрос без транзакции выполнять?.. Цикл - рыба. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 03:33 |
|
||
|
Экспорт данных из БД в потоке
|
|||
|---|---|---|---|
|
#18+
Vlad F Но вот FR, например, имеет достаточно отлаженный набор фильтров в разного рода популярные форматы. И вот именно это, на мой взгляд, в данном случае самый цивилизованный путь. Согласен, но а) у меня слишком примитивная задача, б) нафиг надо на свои его покупать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2020, 03:35 |
|
||
|
|

start [/forum/topic.php?fid=58&startmsg=39957144&tid=2038319]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
210ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 562ms |

| 0 / 0 |
