Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Оччень интересный глюк (ASA, SaVCL, Delphi, кривые руки? :)
|
|||
|---|---|---|---|
|
#18+
Исходные данные: - Sybase ASA v9.0.2.3207; - Delphi 7; - SaVCL v2.12 от 17.12.2004. Выполняется запрос Код: plaintext 1. 2. Если этот запрос выполняется из ISQL, то запрос, как и должен, возвращает одну строчку. Если же этот запрос выполняется через SaVCL, то начинаются "чудеса в Решетове"... Сначала я подумал, что не возвращается ни одна строка - по крайней мере выглядело это именно так. Удалил JOIN - вернулась одна строка. Снова добавил JOIN - ничего нет. После долгих ковыряний выяснилось, что SaVCL таки вобзвращает результат (одна строка), но вот функция GetRecordCount работает ... неверно. Она возвращает результат "-1"! Попробовал добавить еще одну строчку в базу, стало выбираться 2 строки, результат функции = "-2"!!! А в други случаях функция возвращает "правильное" количество строк, без отрицательного знака. На данный момент решил эту проблему исправлением функции GetRecordCount - добавил функцию модуля - но хотелось бы разобраться, что к чему и откуда ноги растут :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2005, 08:48 |
|
||
|
Оччень интересный глюк (ASA, SaVCL, Delphi, кривые руки? :)
|
|||
|---|---|---|---|
|
#18+
Еще одна "странность" SaVCL (хотя, возможно, это не баг, а фича). Сервер установлен на одной машине, попытки подключения идут с другой. На клиентской машине из протоколов - только Tcp/ip. В параметрах подключения устанавливаем: Код: plaintext При попытке запуска из среды Delphi при попытке задать SaDb.Active := True получаем External Exception. Если ЭТОТ ЖЕ скомпилированный EXE запустить ВНЕ среды, то он прекрасно работает. Убирание slAll из Links либо добавление протокола NetBEUI решает проблемы, однако хотелось бы выяснить, так и задумывалось либо в поведении компонент есть что-то непредвиденное? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2005, 09:24 |
|
||
|
Оччень интересный глюк (ASA, SaVCL, Delphi, кривые руки? :)
|
|||
|---|---|---|---|
|
#18+
По поводу RecordCount смотрим справку по SaVcl (savcl_ru.hlp), раздел TSaDs,RecordCount. А откуда ноги растут см. справку по sybase: Adaptive Server Anywhere Programming Guide, 6. Embedded SQL Programming, The SQL Communication Area (SQLCA), SQLCA fields, поле sqlerrd[2] (SQLCOUNT). По второму вопросу: SaVcl по параметру ConnectParams.Links формирует строку с параметрами коннекта в части используемых протоколов. Далее строка просто передается в библиотеку sybase, где и возникает ошибка. Почему - вопрос. Если есть возможность, то проверьте систематичность ошибки на разных версиях sybase. С уважением, Сергей Гарилов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2005, 14:04 |
|
||
|
Оччень интересный глюк (ASA, SaVCL, Delphi, кривые руки? :)
|
|||
|---|---|---|---|
|
#18+
По первому вопросу: как обычно, RTFM. Спасибо за ссылку :) По второму вопросу: к сожалению, проверить систематичность ошибки на разных версих не могу - везде стоит 9-ка, последний билд. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2005, 16:29 |
|
||
|
|

start [/forum/topic.php?fid=55&fpage=92&tid=2013204]: |
0ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 340ms |

| 0 / 0 |
