Borland c++ Builder и Access2000
Формируешь строку, потом заменяешь именяемые параметны на символы подстановки (%s, %d и другие - см. хелп по функции Format)
Далее делаешь так
//.........................
TForm1::ConnectTo (Параметры_Подключения)
{[INDENT]
ADOConn->Connected = false; // Разрываем существующиее соединение
ADOConn->ConnectionString = AnsiString::Format (csConn, ARRAYOFCONST ((Параметры_подключения)); // Формируем строку подключения с указанными параметрами
ADOConn->Connected = true; // Подключаемся к указанной БД
[/INDENT]}
Потому, что ADO это тормоз. Скачай IB6 он бесплатный и с исходниками и работай.
Может, поменьше индексов в таблице делать?
Кстати, насчёт запросов SQL - есть один вариант.
Создаётся запрос в самом Access, запоминается его имя.
Далее, запрос без параметров вызывается по имени через ADOTable, а запрос с параметрами - через ADOStoredPoc.
Плюсы очевидны:
1. минимум головняка с отладкой (не нужно каждый раз перекомпилировать приложение);
2. Не нужно в программе мучить StringList, формируя каждый раз новый текст запроса;
3. Есть удобная и наглядная среда разработки запросов :D ;
4. Можно с чистой совестью изменять структуру таблиц в базе - главное, чтобы имена запросов и полей в них оставались неизменными;
5. Имена используемых запросов можно записать отдельно, как строковые константы - не нужно будет просматривать по десять раз текстовые значения в коде программы. (а это, как известно, самый большой головняк, ибо компилятором не отслеживается:( )
Кстати, насчёт запросов SQL - есть один вариант.
Создаётся запрос в самом Access, запоминается его имя.
Далее, запрос без параметров вызывается по имени через ADOTable, а запрос с параметрами - через ADOStoredPoc.
Плюсы очевидны:
1. минимум головняка с отладкой (не нужно каждый раз перекомпилировать приложение);
2. Не нужно в программе мучить StringList, формируя каждый раз новый текст запроса;
3. Есть удобная и наглядная среда разработки запросов :D ;
4. Можно с чистой совестью изменять структуру таблиц в базе - главное, чтобы имена запросов и полей в них оставались неизменными;
5. Имена используемых запросов можно записать отдельно, как строковые константы - не нужно будет просматривать по десять раз текстовые значения в коде программы. (а это, как известно, самый большой головняк, ибо компилятором не отслеживается:( )[/QUOTE]
На мой взгляд эффективность StoredProc ощущается только если она выполнятся несколько раз подряд.
Уместно ещё узнать насколько велика будет эта база данных, каким образом работает (при массовых удалениях и вставках база невероятно пухнет и после этого медленно работает).
Среда для разработки - ничего, но бывает лучше ;).
Со временем в среде бываешь всё реже.
Я в своё время сделал базу с Access. Использовал сохраненные выборки с параметрами. Т.е. они у меня работали как View-ки . Потом когда встал вопрос перенести в FireBird - я не смог.
Вьюшку с параметром не вызовешь.