На главную
Подписка
Новости


Рейтинг@Mail.ru











Главная / DELPHI / Часто задаваемые вопросы и ответы на них / Разработка баз данных - Не могу сделать выборку по строковым полям! Сделать домашней страницей Добавить в избранное Написать писмо

Не могу сделать выборку по строковым полям!


Cobalt_ (18.12.01 10:58)

SELECT Clients.CompanyName, Clients.WorkTime, Clients.ID
FROM Clients
WHERE (((Clients.CompanyName) Like "*ке*"));

General SQL error.
[Microsoft][Драйвер ODBC Microsoft Access]
Слишком мало параметров. Требуется 1.

Количество скобок никак не влияет
То же самое в Accesse проходит на ура - всё видно...
Что  делать?



Turalyon ©   (18.12.01 11:07)
попробуй

select * from Clisents
where CompanyName like "%ке%"

А скобки помоему вообще не нужны
Кавычки одинарные, хотя с ACCESS, по моему, без разницы.


Panov (07.01.02)
Это стандарт SQL:

SELECT
 Fields
FROM
Tables
WHERE OneField LIKE '%FindString%'

Хочу добавить, что при использовании в таком виде ни один сервер БД, в
том числе и ACCESS, не будет оптимизировать выполнение запроса, т.е.
выборка из таблиц будет идти простым перебором всех записей на стороне
сервера. Это, конечно, выгоднее, нежели перекачивать всю информацию на
сторону клиента, и уже здесь фильтровать.
Лучше, если есть возможность проиндексировать таблицу по этому полю и
конструкцию LIKE использовать в виде:
MyField LIKE 'FindString%'

В этом случае сервер будет оптимизировать выполнение запроса путем
использования индексов.
---------------------------
Честно говоря, вопрос не относится к DELPHI.

(Из конференции Мастера DELPHI)

Copyright ©   "Мастера DELPHI"   E-mail:   delphi@mastak.com  http://www.delphimaster.ru
Источник получения информации: http://www.delphimaster.ru
Hosted by uCoz