|
2 / 2 / 0
Регистрация: 11.09.2023
Сообщений: 193
|
||||||||||||||||
Очень медленное обновление таблиц БД 5-7 секунд22.11.2023, 13:10. Показов 975. Ответов 10
Метки нет (Все метки)
Количество всего затрагиваемых данных в БД, в 2ух цикла for 52+22=74 строки. Заносимые данные в первом число 0-200 второй строка не более 50 символов. Вначале я делал через добавление запроса CommandText.Add, потом я его вынести непосредственно в FDCommand1 и FDCommand2, как меня тут учили. Ожидал решения проблемы и восторга от того что наконец то увижу и пойму реальные плюсы, а не только минусы которые очевидны от этого действа. Но нет плюсов не было. Разница быть может и есть в 1 секунду, а может и нет, даже с таким безобразным кодом. :
Добавлено через 5 минут Кстати проблема возможно не в коде. Когда я таскаю БД свой програмулины дома у меня ноутбук выполняет обнавление таблиц за 0,05 секунд (полный перезалив БД по ее дампу с удалением таблиц). А когда на работу я притаскиваю БД, то она обновляется-пересоздается по запросу за 4-7 секунд, причем такое на 2ух компах. А компы на работе мощнее моего ноутбука будут.
0
|
||||||||||||||||
| 22.11.2023, 13:10 | |
|
Ответы с готовыми решениями:
10
Очень медленное копирование? Очень медленное отображение bmp Очень медленное выполнение .c_str() в minGW |
|
828 / 443 / 38
Регистрация: 05.05.2022
Сообщений: 3,054
|
|
| 22.11.2023, 15:30 | |
|
1) При сохранении колонок, для чего в гриде есть метод, надо считаться, что могут появиться новые поля в БД, но в гриде из-за старого конфига не отобразятся. Я с этим задолбался. Но это отдельная тема. Да и в БД их хранить для многопользовательской базы, это на всех что-ли? Надо каждому юзеру отдельно.
2) Методы профилирования выполнения запросов есть? 3) Возможность БД выполнять запросы пакетно есть? Разница м/б на порядки. И несколько десятков запросов - это много. 4) Производительность всегда зависит от того, как там с кэшированием данных из БД в памяти. Если они уже в оперативке, то выполнение будет быстрее, если же надо шманать винт...
0
|
|
|
2 / 2 / 0
Регистрация: 11.09.2023
Сообщений: 193
|
|
| 22.11.2023, 17:41 [ТС] | |
|
2) Нет.
3) Нет. Не знаю еще о таком. 4) Дома прога закрывается за 1 секунду. В 5-6 раз быстрее чем на работе. Возможно действительно такая разница из за HDD дома у меня SSD, а на работе железяка. Хотя...считать файл дамп БД в 25кб .... и такая разница. Ладно это мелочи на данном этапе развития.
0
|
|
|
|
|
| 22.11.2023, 17:58 | |
|
а что за база-то?
Добавлено через 2 минуты вообще конечно, десятки запросов это уже не очень хорошо, возможно, стоит искать методы пакетного выполнения уже написали выше, а что, один поменял, и у всех поменяется? а точно ли один раз выполняется этот кусок? а точно ли именно тут несколько секунд проводим?
0
|
|
|
828 / 443 / 38
Регистрация: 05.05.2022
Сообщений: 3,054
|
|||||||||||
| 22.11.2023, 22:08 | |||||||||||
|
MS SQL Server позволяет создать пачку запросов, просто перечислив их через ; Т. е.
Access такого не умеет. Для каждой СУБД надо смотреть отдельно. Но если всю пачку выполнить в одной транзакции, то это точно быстрее и при передаче по сети может быть огромный выигрыш только на передаче. В остальном же, надо исследование проводить. Самыми разными способами. Наличие профайлера, чтобы посмотреть, что именно на сервер пришло и сколько выполнялось, желательно. MS SQL Server - это все-таки СУБД высшего класса, с максимумом возможностей, что у других надо изучать возможности их средств администрирования. Кстати, профайлер иногда еще позволяет понять, что вообще посылает запрос, если где-то напортачено, и от проги, явно, идет какая-то активность, но непонятно из какого места.
0
|
|||||||||||
|
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,611
|
|
| 23.11.2023, 02:10 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 11.09.2023
Сообщений: 193
|
|||||
| 23.11.2023, 06:46 [ТС] | |||||
|
MySQL.
Да и он тут не причем. Действа на локальной машине производятся.
0
|
|||||
|
|
|
| 23.11.2023, 15:05 | |
|
вместо ini в этом веке я бы все-таки рекомендовал JSON)
я загуглил, в MySQL есть транзакции, можно попробовать открыть транзакцию в явном виде выполнить все запросы, и сделать Commit это вполне может помочь если нет, то вариант со скриптом выглядит наиболее обещающим
0
|
|
|
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,611
|
||
| 24.11.2023, 01:52 | ||
|
Иначе я не понимаю в чём ещё могут быть ваши проблемы.
0
|
||
|
2 / 2 / 0
Регистрация: 11.09.2023
Сообщений: 193
|
||||||
| 24.11.2023, 07:21 [ТС] | ||||||
|
Попробовал создать простыню из запросов и отправить один раз, все равно медленно, хотя очень удивительно. Т.к. вместо 74 запросов всего 2.
В разы 4-5 медленнее чем на домашнем ноутбуке. Ну ладно не критично. Зато проработал вариант отправки запросов большими портянками. Кликните здесь для просмотра всего текста
0
|
||||||
| 24.11.2023, 07:21 | |
|
Помогаю со студенческими работами здесь
11
Очень медленное копирование файлов, разархивирование..
Очень медленное первое создание и показ окна Крайне медленное обновление визуальной оболочки интерфейса Очень медленное скачивание с одного компа на другой по локальной сети Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|