|
|
|
Как написать анализатор SQL-выражений
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, ALL Среда разработки Borland C++Builder 5. Опыт - полгода. Пишу программу, которая собирает данные через ADO из разных таблиц и выдает определенного вида отчет. Все работает. Однако, есть одно "НО" - условия отбора данных меняются порой кардинально и, соответственно, приходится менять программу: исправлять, добавлять или убирать целые SQL-запросы, формируемые динамически с использованием локальных переменных. Хочется сделать так, чтобы пользователь писал как параметризованные, так и не параметризованные SQL-команды (скрипты) в текстовом файле, а программа бы их обрабатывала. И при этом могла бы связывать параметры, задаваемые пользователем, с переменными, уже существующими в памяти программы, переключаться между коннекциями (но в рамках одного скрипта должна действовать одна коннекция), загружать данные в Recordset только при подаче комманды SELECT и т.д. Мне кажется, что это очень тяжело сделать. Может быть Вы мне поможете, скажете что прочитать, подкинете идею... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 12:32 |
|
||
|
Как написать анализатор SQL-выражений
|
|||
|---|---|---|---|
|
#18+
Может быть проще дать пользователю возможность непостредственно указывать текст SQL-запроса, который пойдет в Recordset.Open. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 13:10 |
|
||
|
Как написать анализатор SQL-выражений
|
|||
|---|---|---|---|
|
#18+
roman10Может быть проще дать пользователю возможность непостредственно указывать текст SQL-запроса, который пойдет в Recordset.Open. Нет, не проще. В текст запроса, формируемого в настоящий момент, входит дата, преобразованная в символьный вид. Не будет же пользователь каждый день переписывать запрос... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 13:41 |
|
||
|
Как написать анализатор SQL-выражений
|
|||
|---|---|---|---|
|
#18+
Я использую обычно boost::spirit, только фишка в том, что workaround у борланда бедненький, поэтому тебе надо качнуть сам spirit отдельно от буста например версию 1.6.2. они спецом ведут поддержку старых компиляторов. сам spirit а вот парсинг SQL на его основе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 14:26 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2033755]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
83ms |
get topic data: |
8ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 383ms |

| 0 / 0 |
