Вниз
Скачать: CL | DM;

Всем снова привет - проблема с Query   Найти похожие ветки 

 
Perf2k2 ©   (2005-10-19 12:58) [0]

Есть база данных Access, подрублена через BDE. Есть запрос:[code]  "SELECT crm_dela.*, crm_clients.*, crm_users.*, crm_sk.*
FROM (((crm_dela LEFT JOIN crm_users ON crm_dela.delo_user_add = crm_users.user_id) INNER JOIN
crm_sk ON crm_dela.delo_sk = crm_sk.sk_id) INNER JOIN crm_clients ON crm_dela.delo_client = crm_clients.client_id)
WHERE crm_clients.client_fio LIKE "*Сок*"   AND crm_sk.sk_name LIKE "**" AND crm_dela.delo_avto LIKE "**"
ORDER BY delo_num DESC
"[/code]
Если этот запрос ввести прямо в оболочке Аксеса (создать новый запрос), то он выдаст все как надо. А вот если его ввести в Query.Sql.Text, то ничего не выдается. А вот если убрать и запроса WHERE, то и в SQL все начинает выдаваться. Вот только смысл тогда этого Query напрочь теряется... :(
Буду признателен за любую помощь.


 
Sergey13 ©   (2005-10-19 13:08) [1]

2Perf2k2 ©   (19.10.05 12:58)
Попробуй в делфи "*" заменить на "%".


 
Perf2k2 ©   (2005-10-19 13:19) [2]

Спасибо! Сработало. А почему именно так? Ведь я же работаю из Делфи с Аксесом, а не с какой-то базой Делфи, у которой язык SQL-запросов не такой, как в Аксесе. Ведь Делфи по сути является только проводником запросов и с ними работать не должна по-своему. Или я чего не понимаю?


 
Sergey13 ©   (2005-10-19 13:26) [3]

2[2] Perf2k2 ©   (19.10.05 13:19)
% - это вроде стандарт SQL. * - мелкомягкая придумка. Почему? А ХЗ. У них часто так.


 
sniknik ©   (2005-10-19 13:50) [4]

> % - это вроде стандарт SQL. * - мелкомягкая придумка. Почему? А ХЗ. У них часто так.

хелп по jet:
Сравнение языка SQL ядра базы данных Microsoft Jet и ANSI SQL
Язык SQL ядра базы данных Microsoft Jet в основном соответствует стандарту ANSI-89 (уровень 1). Однако некоторые средства ANSI SQL не реализованы в языке SQL ядра Microsoft® Jet. Начиная с выпусков ядра Microsoft Jet версий 4.X, программа Microsoft OLE DB Provider для Jet использует дополнительно синтаксис ANSI-92 SQL. И наоборот, язык SQL ядра Microsoft Jet использует зарезервированные слова и средства, не поддерживаемые ANSI SQL

Основные различия
.....

Соответствующие знаки            Язык SQL Microsoft Jet              ANSI SQL
Любой одиночный знак.                                     ?                              _ (подчеркивание)
Произвольное количество знаков.                       *                             %

.....


в самом access (программе) в "сервис-параметры-таблици и запросы" есть пункт "синтаксис для sql-сервер (ANSI-92)"...

т.е. есть 2 режима работы, оба поддерживаются (теоретически), и если поставить там галку то access должен поменять стиль (... возможно.... на практике не пробовал)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.041 c
2-1129572587
~SaM~
2005-10-17 22:09
2005.11.13
А в паскале есть функции аналогичные дельфовским StrToInt и т.п.?


14-1129816532
BerkeleyMan
2005-10-20 17:55
2005.11.13
Москва


14-1130057138
Piter
2005-10-23 12:45
2005.11.13
А что случилось с сервисами NextMail?


2-1130258461
pathfinder
2005-10-25 20:41
2005.11.13
Помогите решить задачку:)


6-1122645473
CAMCOH
2005-07-29 17:57
2005.11.13
Как отправить html письмо с помощью Insy IdSmtp




   Наверх