powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / 1-й isc_dsql_fetch возвращает 100, хотя запись есть
3 сообщений из 3, страница 1 из 1
1-й isc_dsql_fetch возвращает 100, хотя запись есть
    #39603398
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Голову сломал, 2 часа сидел. Бросил, решил сюда написать. :)

Все работало, и вдруг я заметил, что некоторые запросы возвращают 0 строк. Хотя строки есть (проверено в inexpert и через ibx).
Простейшие запросы без параметров. Например:
Код: sql
1.
SELECT FIRST 1 ID FROM TABLE WHERE ID = 123 AND OWNER_ID = 1


IBExpert возвращает 1 запись с ID=123.
Мне isc_dsql_fetch возвращает 100 сразу после isc_dsql_execute (isc_dsql_execute2 с последним параметром NULL тоже пробовал).
Но это на таком запросе. А вот на таком(без WHERE):
Код: sql
1.
SELECT FIRST 1 ID FROM TABLE


isc_dsql_fetch возвращает вначале 0, я вычитываю поле, результат совпадает с IBExpert, а на 2-й раз isc_dsql_fetch уже возвращает 100, как положено.

Убирал FIRST 1 - он и не нужен, т.к. ID это ПК. Просто для наглядности. То же самое.

Единственное, что заметил странного - такие "глючные" запросы почему-то не отображает мониторинг. Хотя, я это сейчас обнаружил на старом 2.1.1 (не было дома другого под рукой, а для таких целей не важно) - может в нем мониторинг глючит.
Правда, из IBExpert-то запросы он показывает эти же самые.

Чувствую, проблема в какой-то мелочи. Может, наведет кто на мысль. Спасибо.
...
Рейтинг: 0 / 0
1-й isc_dsql_fetch возвращает 100, хотя запись есть
    #39603399
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё, разобрался. Я не к той базе коннектился, баран. А в этой именно таких записей и не было.
...
Рейтинг: 0 / 0
1-й isc_dsql_fetch возвращает 100, хотя запись есть
    #39603410
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не так давно, работая с фибаками, нарвался на похожую проблему. Был у меня поиск по содержимому строковых полей, реализованный через CONTAINING. Но было важное отличие: когда я передавал строки для поиска через параметры, всегда возвращался отрицательный результат. Когда через текст SQL-запроса - строки появлялись. INSERT-запросы при этом выполнялись корректно; поиск велся по полям VARCHAR. Пришлось делать ручную экранировку от SQL-иньекций, так как разобраться с причиной такого поведения мне не удалось.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / 1-й isc_dsql_fetch возвращает 100, хотя запись есть
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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