powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
4 сообщений из 4, страница 1 из 1
Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
    #37172088
freeckle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

В базе (ASA8 и ASA12) имеется поле первичного ключа и ссылки на него из других таблиц имеющие тип numeric(24,0).

В приложении (соединение с БД через BDE-ODBC) в TQuery параметры запроса заполняются как ParamByName('ID').AsFloat.

С БД под ASA8 запрос (обычный select по ключевому полю) выполняется моментально, под ASA12 "думает" несколько секунд (иногда десятков).
После изменения в приложении типа параметра запроса на integer и в ParamByName AsFloat на AsInteger тормоз исчезает.

Что изменилось между 8-м и 12-м? Может есть какая опция указать Sybase-у сравнивать не плавающие значения (полагаю в этом и причина тормозов), а как целочисленные. 8-й то с этим справлялся. В приложении менять все запросы довольно накладно...
...
Рейтинг: 0 / 0
Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
    #37172143
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
float b numeric(24,0) не эквивалентные типы. Сокрее всего 12-ка не воспринимает преданное значение как адекватное значение ключа и делает табличное сканирование. Вы план выполнения то хоть вначале посмотрите, там все будет видно.
...
Рейтинг: 0 / 0
Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
    #37172306
freeckle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В том то и проблема - почему "12-ка не воспринимает преданное значение как адекватное значение ключа"? И как заставить ее это сделать...

Если вместо параметра подставить реальное значение и выполнить запрос в 12-ке в Interactive SQL - все "летает". И в плане индекс используется (который foreign key) какой надо.
А как посмотреть план запроса от приложения?
...
Рейтинг: 0 / 0
Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
    #37172780
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посмотреть план запроса от приложения можно, запустив профайлер, делается это в централе. Почитайте хелп по профилированию, там ничего сложного. После этого можно будет уже о чем-то говорить более конкретно, а так пока выходит гадания на кофейной гуще.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Значительное замедление выполнения SQL-запросов в ASA12 с параметром типа float
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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