Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает запрос / 14 сообщений из 14, страница 1 из 1
14.12.2021, 08:20
    #40119819
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
Простейший запрос на равенство строк, стока индексированная
Код: plsql
1.
2.
3.
SELECT Path.Rn, cdool([Path]=GetGlav_StrFullPath()) AS зз
FROM Path
WHERE (((cdool([Path]=GetGlav_StrFullPath()))=True));


это последний вариант, ругается на не верный тип данных в CBool, если запрос смотреть без условия отбора, то показывает что есть строки с [Path]=GetGlav_StrFullPath(), а если поставить на них отбор, то есть показать только равные значения, вдруг запрос не выдает ни одной записи.
...
Рейтинг: 0 / 0
14.12.2021, 08:28
    #40119821
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
antipod
есть строки с [Path]=GetGlav_StrFullPath()

у вас видимо имя таблицы и поле обозваны одинаково
это вряд ли допустимо и в любом случае неразумно
...
Рейтинг: 0 / 0
14.12.2021, 08:54
    #40119823
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
ПЕНСИОНЕРКА,
Вот так вот тоже не работает.
Код: plsql
1.
2.
3.
SELECT Path.Rn, Path.Path
FROM Path
WHERE (((Path.Path)=GetGlav_StrFullPath()));


У меня макрос работал в течении пары часов, и все было нормально. толи на 46 тысячах записей, толи из-за длинной строки сравнения - происходит сбой. Опять же повторяю - если не ставить условие отбора, а просто сравнивать строку таблицы и функции - то все срабатывает нормально, одна строка точно выходит как равная функции
...
Рейтинг: 0 / 0
14.12.2021, 09:10
    #40119826
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
Показывайте код функции. Собака порылась явно где-то в ней.
...
Рейтинг: 0 / 0
14.12.2021, 09:11
    #40119827
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
Akina,
Код: vbnet
1.
2.
3.
Function GetGlav_StrFullPath() As String
    GetGlav_StrFullPath = [Forms]![Glav]![StrFullPath]
End Function
...
Рейтинг: 0 / 0
14.12.2021, 13:07
    #40119910
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
В последнее время чёт у всех попёр бзик:
WHERE (((cdool([Path]=GetGlav_StrFullPath()))=True))
ну типа
WHERE (1=1=True) с контрольным выстрелом в голову (вторая проверка состоявшегося события на то, что оно действительно состоялось или мелочь в кармане нужно пересчитывать минимум два раза)...
Растолкуйте плиз, может я что-то пропустил в этой жизни или тупо не догоняю...
...
Рейтинг: 0 / 0
14.12.2021, 13:23
    #40119920
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
vmag,
Легко.
После того как выяснилось что нормальный запрос не работает, я в конструкторе написал
[нужное поле] = функции
у меня масса нулей и в одной строчке -1
если я пишу то что выше = труе - у меня нет строк в запросе, я в ауте
уже от безисходности поставил фиксированное преобразование к булево
и не хрена не работает
достаточно?
...
Рейтинг: 0 / 0
14.12.2021, 13:27
    #40119925
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
вы представляете, а вот так вот работает
Код: plsql
1.
2.
3.
SELECT Path.Rn, [Path]=GetGlav_StrFullPath() AS pp
FROM Path
WHERE ((([Path]=GetGlav_StrFullPath())=-1));


почему у 46 тысяч строк до этого было по другому?
...
Рейтинг: 0 / 0
14.12.2021, 13:34
    #40119930
Serg197311
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
antipod
вы представляете, а вот так вот работает

почему у 46 тысяч строк до этого было по другому?

Хотел я спросить - да не успел..
а cdool - это что такое?
...
Рейтинг: 0 / 0
14.12.2021, 13:37
    #40119932
antipod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
Serg197311,
ссори криво скопировал, функция преобразования к булево
CBool()
...
Рейтинг: 0 / 0
14.12.2021, 13:38
    #40119933
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
antipod,

ещё один франкенштейн...
...
Рейтинг: 0 / 0
14.12.2021, 14:09
    #40119939
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
Serg197311
Хотел я спросить - да не успел..
а cdool - это что такое?


тут даже уместно спросить - А что он вообще хочет русскими словами без английских букв и звуков...
есть подозрение, что не сможет сказать...
...
Рейтинг: 0 / 0
14.12.2021, 14:22
    #40119943
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
я подозреваю, что ему нужно отобрать строки в которых содержится путь указанный в поле формы
но если это так, то тогда он делает всё возможное, чтобы это никогда не сработало
...
Рейтинг: 0 / 0
14.12.2021, 15:05
    #40119967
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает запрос
а Вы проанализируйте выражение:(cdool([Path]=GetGlav_StrFullPath()))=True
преобразовать текст(Path -думаю текст) в логическое значение,сравнить его с текстом и вывести TRUE если сравнение TRUE-такое выражение всегда FALSE и как следствие ни одной записи в выборке
А вот так [Path]=GetGlav_StrFullPath())=-1 все правильно-текст сравнивается с текстом,только "-1" совершенно лишняя т.к если условие соблюдено и так будет TRUE ( а то уж слишком масляным получается масло масляное) И еще: а зачем функция-почему в выражении не сослаться на поле? Да и Path не очень то подходит для имени объекта БД
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Не работает запрос / 14 сообщений из 14, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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