Страница: 1 | 2 |
Вопрос: Query не понимает в запросе like
Добавлено: 27.06.08 05:45
Автор вопроса: Metronom
Захожу в Query при построении запроса ввожу данные поля содержат например "%Ленина%", выходит сообщение про синтаксическую ошибку. В режиме редактирования запроса тоже такая же ошибка.
Select * from Address
where street like '%Ленина%'
Видимо Query не нравится служебное выражение "like".
Точное соответствие = катит.
Как сделать так, чтобы Query понимало "like" ?
Ответы
Всего ответов: 16
Номер ответа: 1
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #1
Добавлено: 27.06.08 06:46
А так ?
where street like '*Ленина*'
Номер ответа: 2
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #2
Добавлено: 27.06.08 08:29
Не получается. Любые символы в кавычках не понимает.
При построении условий прямо в Query все равно не понимает условие "содержит" / "похоже на"
Office 2003
Номер ответа: 3
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #3
Добавлено: 27.06.08 08:48
Попробуй заменить * на названия полей. И ; в конце запроса поставить.
Номер ответа: 4
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #4
Добавлено: 27.06.08 08:58
Когда =, выдает какие-то рез-ты или нет ? В таблице есть такая строка ? И такого типа (строкового) ?
Номер ответа: 5
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #5
Добавлено: 27.06.08 09:40
когда = все ищет. Поле есть и строкового вида. Придется через справочники строить запрос чтоли.
Номер ответа: 6
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #6
Добавлено: 27.06.08 10:11
А что пишет ? Ругается на что-либо ?
Номер ответа: 7
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #7
Добавлено: 27.06.08 10:21
Когда через созданное ODBC соединение делаю запрос, отбираю таблицу, конструирую запрос мастером с условием street содержит Ленин, выходит сообщение без номера "Синтаксическая ошибка" и далее в "Просмотр и изменение данных в Microsoft Query" не допускает.
Потом делаю так, создаю просто запрос иду в "Просмотр и изменение данных в Microsoft Query", вхожу в конструктор вписываю в sql запрос where street like '%Ленин%' опять выходит то же окно без номера. ЗКБ
Номер ответа: 8
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #8
Добавлено: 27.06.08 10:29
В Access-Tools-References нет пропущенных (Missing) библиотек ? У меня похожее было. В запросе ругался на Mid и Left.
Номер ответа: 9
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #9
Добавлено: 27.06.08 10:48
Какая библиотека может быть упущена? У меня на данный момент подключены:
Visual Basic For Applications
Microsoft Excel 11.0 Object Library
OLE Automation
Microsoft Office 11.0 Object Library
Microsoft DAO 3.6 Object Library
Microsoft ActiveX Data Object 2.8 Library
Последние 2 подключены от отчаяния. В ADO получается запрос. Отрабатываю. Но хотелось бы все таки узнать по Query, постоянно нужно
Номер ответа: 10
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #10
Добавлено: 27.06.08 11:32
У меня прямо под списком подключенных библиотек писала "MISSING имя библиотеки". И кажется было выделено галочкой. Когда снимала отметку, все чудесным образом находилось и исполнялось.
Я вот так делаю. Вроде до этого работало всегда.
s = "SELECT Поле1, Поле2, Поле3 " & _
"FROM MyTable " & _
"WHERE (Поле1 Like 'Строка') " & _
"ORDER BY MyDate;"
Debug.Print s
Set qSQL = dbsKRSPRS.CreateQueryDef("", s)
Set rst_Well_KRS = qSQL.OpenRecordset()
qSQL.Close
Естественно, с описание переменных. Если и были какие-то баги, то это уже я неправильно таблицу указывали или название поля и т.д.
Из дополнительных подключена только DAO библиотека.
Номер ответа: 11
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #11
Добавлено: 27.06.08 11:48
Мне кажется что в Excel 2003 идет нестыковка с языками. В References библиотека Visual Basic For Applications язык стоит English\Standart. Возможно мастер Query не правильно транслирует команды на сам VBA. Делаю поиск по включению английских букв - не работает. Т.е. проблема не в запрашиваемых данных, а в самом переводе сл.слова "содержит" на Like.
Либо Query не понимает Like
Номер ответа: 12
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #12
Добавлено: 27.06.08 12:17
Переключила Office на русский. В конструкторе пишется все тот же Like. Что подразумевается под "в самом переводе сл.слова "содержит" на Like" ?
А библиотека Microsoft * 11.0 Object Library ? И DAO 3.6 ?
Номер ответа: 13
Автор ответа:
Metronom
Вопросов: 3
Ответов: 9
Профиль | | #13
Добавлено: 27.06.08 12:35
Захожу в таблице Excel Данные\Импорт данных\Создать запрос... далее выбираю ODBC доступ к базе, вхожу выбираю таблицу начинаю выбирать столбцы для отбора, беру street. Справа составляю условие "содержит" в значении указываю Ленин, жму Далее, след.окно "Сортировка" жму далее, "Вернуть данные в Microsoft Office Ecxel" вот тут выходит сообщение "Синтаксическая ошибка". Выбираю нижнее "Просмотр или изменение данных в Microsoft Query" опять выходит сообщение об ошибке. Что то тут с языками не то видать.
Номер ответа: 14
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #14
Добавлено: 27.06.08 13:08
Попробовала и с Like и с "содержит". Со * и с %. Работает.
Извини, не знаю, чем еще помочь.
Номер ответа: 15
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #15
Добавлено: 27.06.08 13:10
Последняя надежда. А на английской версии Excel работает ?