![]() |
|
|
![]()
|
|
| simanyay |
|
|||
![]() Антон Ковалёв ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: нет Всего: 36 |
Привет. Мне необходимо написать анализатор SQL запросов. Т.е., абстрактно говоря, у меня на входе будет SQL запрос и результирующие данные, а на выходе анализатор должен выяснить правильный ли это запрос и будет ли результат запроса совпадать с результирующими данными. Первое, что мне пришло в голову, это то, что мне надо найти информацию по семантическому и синтаксическому анализу. Поискав по форуму, я нашёл некоторую литературу, однако может кто встречался и у него есть более подробное описание, применительное к конкретной задаче? Буду рад любой помощи.
Заранее, спасибо. -------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 1 Всего: 261 |
Может я не так понял, но почему нельзя просто отправить запрос и если вернется ошибка значить запрос неправильный.
Такой вариант 100% исключается? Потом тебе под ANSI SQL нужно или под СУБД конкретную? |
|||
|
||||
| simanyay |
|
|||
![]() Антон Ковалёв ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: нет Всего: 36 |
В том то и дело, что мне нужно ANSI SQL. А, по моему, никакая СУБД на 100% не поддерживает ANSI стандарт
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 1 Всего: 261 |
Ну тогда как вариант
1. Определяем тип запроса, т.е. SELECT, INSERT и т.п. для каждого запроса делаем маску, что-то типа паттерна для рег. выражения. 2. Проверяем по паттерну. |
|||
|
||||
| simanyay |
|
|||
![]() Антон Ковалёв ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2053 Регистрация: 22.8.2002 Репутация: нет Всего: 36 |
Mal Hack, спасибо. Я думаю над этим вариантом
-------------------- «It's better to be a pirate than to join the Navy» — Steve Jobs. |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |