Вниз
Скачать: 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.026 c
14-1127485001
Lamer@fools.ua
2005-09-23 18:16
2005.11.13
Kyiv Mastak Party


2-1130168799
Profi
2005-10-24 19:46
2005.11.13
Зависание функции из модуля.


14-1129919373
LordOfRock
2005-10-21 22:29
2005.11.13
Symantec Norton Antivirus 2004


2-1129563459
Rasher
2005-10-17 19:37
2005.11.13
Вопрос о всплывающих окнах


2-1130192008
alex-s
2005-10-25 02:13
2005.11.13
Чем пользоватся и как




   Наверх