SQL запрос не работает корректно

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Prickly
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 82
Зарегистрирован: 07.10.2004 (Чт) 18:44
Откуда: From Russia

SQL запрос не работает корректно

Сообщение Prickly » 01.06.2005 (Ср) 21:12

Привет всем!

У меня на форме DataGrid и Adodc компоненты. Я использую БД Access 97

Отправляю такую SQL:

Adodc1.Recordset.Open "select Buyer.Name from Buyer where Buyer.Company like "*em*""

Так вот, если у меня в таблице значения:

Company | Name
-----------------------
Seml | Nick
Retruv | Alex
Casemm | Dima
.....
.....
.....

По логике в результате такой вот выборки должно получиться:

Nick,
Dima

Но возвр. пустота. Кто нибудь подскажите в чем тут косяк! like просто не ищет по шаблону!
Если записать так:

Adodc1.Recordset.Open "select Buyer.Name from Buyer where Buyer.Company like "Casemm""

То результат будет:

Dima

т.е. like работает как обыкновенное сравнение.

Жду вашей подсказки и помощи
Не было бы Гейтса, не было бы нас!

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 01.06.2005 (Ср) 21:19

А вот так
Код: Выделить всё
SELECT NAME FROM [NAMES] WHERE COMPANY LIKE '*em*'

не пробовал?
Моду создают модоки, а распространяют модозвоны.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 01.06.2005 (Ср) 21:23

Мой тебе совет: при оформлении подобных вопросов будь добр, используй кнопочки VB и/или SQL, которые расположены непосредственно над полем для ввода текста поста. Иначе, как в твоем случае, при использовании пропорционального шрифта очень сложно разобрать, какие именно кавычки ты используешь для задания шаблона сравнения в условии LIKE. Лучше писать вот так:
Код: Выделить всё
select Buyer.Name from Buyer where Buyer.Company like "*em*"

Вот тут сразу становится видно то, что своим наметанным глазом заметил hCORe :).

Prickly
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 82
Зарегистрирован: 07.10.2004 (Чт) 18:44
Откуда: From Russia

SQL запрос не работает корректно

Сообщение Prickly » 01.06.2005 (Ср) 21:34

Так нет

Код: Выделить всё
SELECT NAME FROM [NAMES] WHERE COMPANY LIKE '*em*'


а вот так пробовал

Код: Выделить всё
SELECT NAME FROM Buyer WHERE COMPANY LIKE '*em*'


Не работает.
Не было бы Гейтса, не было бы нас!

Prickly
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 82
Зарегистрирован: 07.10.2004 (Чт) 18:44
Откуда: From Russia

Сообщение Prickly » 01.06.2005 (Ср) 21:35

И кавычки менял

Код: Выделить всё
SELECT NAME FROM Buyer WHERE COMPANY LIKE "*em*"
Не было бы Гейтса, не было бы нас!

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 01.06.2005 (Ср) 22:18

Кавычки лучше не менять, а то дороже себе получится. Лучше проверь, действительно ли Аксесс хочет астериск в качестве универсальной подстановки. В MSSQL, например, для этого используется процент:
Код: Выделить всё
where Company like '%em%'

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 02.06.2005 (Чт) 15:43

через ADO всегда %
* - только для DAO

Prickly
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 82
Зарегистрирован: 07.10.2004 (Чт) 18:44
Откуда: From Russia

Сообщение Prickly » 04.06.2005 (Сб) 21:25

Сейчас попробую поменять.
Не было бы Гейтса, не было бы нас!

Prickly
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 82
Зарегистрирован: 07.10.2004 (Чт) 18:44
Откуда: From Russia

Сообщение Prickly » 04.06.2005 (Сб) 21:29

Спасибо всем!

Все отлично работает!
Не было бы Гейтса, не было бы нас!


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList