0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 3
|
||||||
1 | ||||||
Замедление скорости выполнения хранимой процедуры25.03.2010, 13:40. Показов 2198. Ответов 4
Метки нет (Все метки)
Уважаемые Експерты FireBird!
У меня есть проблема, связанная с замедлением скорости выполнения одной и тойже хранимой процедуры, которая во время расчета некоторого процесса должна последовательно выполниться примерно 3800 раз. Если в начале данного процесса скорость выполнения этой хранимой процедуры равняеться примерно 50-70 мсек, то уже в конце расчета, скорость выполнения составляет уже 1 сек. Сама хранимая процедура довольно простая, но ее текст перед каждым выполнением динамически изменяется (SQL-оператор Select между операторами for и into) :
Заранее благодарен.
0
|
25.03.2010, 13:40 | |
Ответы с готовыми решениями:
4
Получить данные после выполнения хранимой процедуры в Perl. Экспорт результата выполнения хранимой процедуры в текстовый файл Привязка выполнения хранимой процедуры к кнопке и вывод результата в listbox Какие еще разрешения требуются пользователю для выполнения системной хранимой процедуры таблицы master? |
1263 / 706 / 62
Регистрация: 21.12.2009
Сообщений: 2,255
|
|
25.03.2010, 14:56 | 2 |
Можешь сказать какие изменения вносятся в текст процедуры. Может можно без низ обойтись
0
|
0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 3
|
|
25.03.2010, 16:47 [ТС] | 3 |
В операторе Select для таблицы DAT могут меняться имена полей ZnХ (Х от 1 до 30), сама таблица DAT может быть также связана с другой таблицей через inner join, к тому же каждый раз изменяются условия для оператора where.
В конструкции Update для таблицы DOK также меняются имена полей ZnХ (Х от 1 до 30). Таблица DAT содержит данные, которые почти постоянные, а таблицу DOK я использую как временную, данные в которую сначало добавляются, расчитываются, сравниваются а потом удаляются. За время всего расчета этот цикл также повторяется примерно 750 раз.
0
|
1263 / 706 / 62
Регистрация: 21.12.2009
Сообщений: 2,255
|
|
25.03.2010, 21:50 | 4 |
Подумай, может подойдет оператор case
Кроме того, если ты работаешь с версией не ниже 2.1, то вместо временных таблиц можно попытаться использовать СТЕ или глобальные временные таблицы.
1
|
0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 3
|
|
26.03.2010, 13:35 [ТС] | 5 |
Я был не прав в отношении скорости выполнения процедур, как раз скорость выполнения относительно стабильная. Тормозит как раз само изменение текста процедуры с помощью команды ALTER PROCEDURE - с увеличением числа изменений текста процедуры, увеличивается время выполнения данной команды.
Отдельное спасибо за наводку по временным таблицам, начну их использовать.
0
|
26.03.2010, 13:35 | |
26.03.2010, 13:35 | |
Помогаю со студенческими работами здесь
5
Замедление скорости интернета и перенаправление трафика Замедление скорости движения мыши на сайте Должно ли на скорости поворота сказываться ускорение/замедление? Замедление выполнения цикла for Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |