Текущий архив: 2008.09.28;
Скачать: CL | DM;
Вниз
Ошибка при выполнении запроса SQL Найти похожие ветки
← →
pushkin42 © (2008-08-19 13:57) [0]Есть запрос...
SELECT ORGLIST.FSID, ORGLIST.ID, ORGLIST.ORGNAME, ORGLIST.RGNID, "+
"CATEGORIES.NAME as CAT, ORGLIST.GPN, "+
"FS.SHORT, REGION.NAME as RGN, CITY.CITYNAME as CITYNAME FROM "ORGLIST", "FS", "+
""REGION", "CITY", "CATEGORIES" WHERE (_USLOVIE_) AND (FS.ID=ORGLIST.FSID) AND (REGION.ID=ORGLIST.RGNID) "+
"AND (CITY.ID=ORGLIST.CITYID) AND (CATEGORIES.ID=ORGLIST.CATID)) ORDER BY "+
"ORGLIST.ORGNAME ASC, RGN ASC, CAT ASC"
При _USLOVIE_ равном "ORGID>0" запрос выполняется корректно. Если же в скобках где условие написать "CATID"=382, то запрос не выполняется, программа вываливается в Access Violation. Где могут быть грабли? :(
← →
pushkin42 © (2008-08-19 13:58) [1]Поправочка: строка 4: WHERE ((_USLOVIE_) AND (FS...
(левую скобочку забыл. все равно не работает)
← →
Sergey13 © (2008-08-19 14:08) [2]> [0] pushkin42 © (19.08.08 13:57)
Блин, неужели трудно отформатировать, а?
Почему таблицы в кавычках?
> При _USLOVIE_ равном "ORGID>0"
> "CATID"=382
Давай реальные запросы или разберись со своими кавычками.
← →
pushkin42 © (2008-08-19 14:23) [3][b]Запрос, который работает:[/b]
Q := "SELECT ORGLIST.FSID, ORGLIST.ID, ORGLIST.ORGNAME, ORGLIST.RGNID, "+
"CATEGORIES.NAME as CAT, ORGLIST.GPN, "+
"FS.SHORT, REGION.NAME as RGN, CITY.CITYNAME as CITYNAME FROM "ORGLIST", "FS", "+
""REGION", "CITY", "CATEGORIES" WHERE ((ORGID>0) AND (FS.ID=ORGLIST.FSID) AND (REGION.ID=ORGLIST.RGNID) "+
"AND (CITY.ID=ORGLIST.CITYID) AND (CATEGORIES.ID=ORGLIST.CATID)) ORDER BY "+
"ORGLIST.ORGNAME ASC, RGN ASC, CAT ASC";
[b]Запрос, который НЕ работает[/b]
Запрос, который работает:
Q := "SELECT ORGLIST.FSID, ORGLIST.ID, ORGLIST.ORGNAME, ORGLIST.RGNID, "+
"CATEGORIES.NAME as CAT, ORGLIST.GPN, "+
"FS.SHORT, REGION.NAME as RGN, CITY.CITYNAME as CITYNAME FROM "ORGLIST", "FS", "+
""REGION", "CITY", "CATEGORIES" WHERE ((ORGID>0) AND (FS.ID=ORGLIST.FSID) AND (REGION.ID=ORGLIST.RGNID) "+
"AND (CITY.ID=ORGLIST.CITYID) AND (CATEGORIES.ID=ORGLIST.CATID)) ORDER BY "+
"ORGLIST.ORGNAME ASC, RGN ASC, CAT ASC";
← →
pushkin42 © (2008-08-19 14:24) [4]млин
запрос который НЕ работает:
Q := "SELECT ORGLIST.FSID, ORGLIST.ID, ORGLIST.ORGNAME, ORGLIST.RGNID, "+
"CATEGORIES.NAME as CAT, ORGLIST.GPN, "+
"FS.SHORT, REGION.NAME as RGN, CITY.CITYNAME as CITYNAME FROM "ORGLIST", "FS", "+
""REGION", "CITY", "CATEGORIES" WHERE ((ORGLIST.RGNID>0) AND (FS.ID=ORGLIST.FSID) AND (REGION.ID=ORGLIST.RGNID) "+
"AND (CITY.ID=ORGLIST.CITYID) AND (CATEGORIES.ID=ORGLIST.CATID)) ORDER BY "+
"ORGLIST.ORGNAME ASC, RGN ASC, CAT ASC";
← →
Sergey13 © (2008-08-19 14:45) [5]> [4] pushkin42 © (19.08.08 14:24)
Ну и где тут твои "CATID"=382?
зачем кавычки у имен таблиц? Зачем скобки? Работает ли запрос где-нибудь типа ИБЭксперта?
AV выдает программа, а не запрос, кстати. А это отладчиком надо проверять.
← →
Vlad Oshin © (2008-08-19 15:50) [6]проверте расстояния от слов до символа _"_ , чтоб пробелов хватало
← →
pushkin42 © (2008-08-19 15:54) [7]Вышеуказанную проблему решил. Однако, теперь данный запрос, отрабатывая, выдает 113 записей из таблицы (в которой 185), хотя ни в одной из записей ORGLIST.RGNID не может быть меньше или равен нулю. Опять ничего не пойму :(
← →
Sergey13 © (2008-08-19 16:36) [8]> [7] pushkin42 © (19.08.08 15:54)
> Опять ничего не пойму :(
При твоем написании запроса это и не мудрено. 8-)
Переписывай заново, последовательно добавляя таблицы, поля и условия. Лично я так отлаживаю.
← →
MsGuns © (2008-08-19 16:36) [9]Неужели для того, чтобы отлаживать запросы к серверу, непременно нужен форум ?
Страницы: 1 вся ветка
Текущий архив: 2008.09.28;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.023 c