Ответ нашёлся достаточно быстро — клиент Oracle установлен некорректно, и ODBC-драйвер не работает. Казалось бы, какие проблемы? Кто ПТК ПСД переводил на субд Oracle, поделитесь опытом :-). Ошибка SQLSetConnectAttr для драйвера". Проблема не просто в наличии BDE, а в его настройках. В режиме "R" для финмониторинга он видит ЭЦП для подписи, подпись не проставляет, зато шифрует следующим .
Кроме того, мы изучим, как конфигурировать ODBC драйверы. В принципе, сейчас не различают эти два названия (BDE и IDAPI) и считают их синонимами. BDE играет роль, аналогичную контроллеру драйверов ODBC (Open Database. Paradox, текстовые файлы); доступ к SQL-серверам (Oracle, Sybase, MS SQL. Есть партии, которые видят это как неправильное и заявляют, что Jet . Есть файл с картинкой (формат я думаю не имеет значения). В параметрах BDE драйвера для Oracle есть две фенечки, BLOB SIZE. Доступ получается через промежуточную хранимую процедуру, которая видит процедуру из .
Base, . Некоторые СУБД сохраняют базу данных в виде нескольких отдельных файлов, представляющих собой таблицы (в основном, все локальные СУБД), в то время как другие состоят из одного файла, который содержит в себе все таблицы и индексы (Inter. Base). Например, таблицы d. Base и Paradox всегда сохраняются в отдельных файлах на диске. Директорий, содержащий d. Base . DBF файлы или Paradox . DB файлы, рассматривается как база данных.
Другими словами, любой директорий, содержащий файлы в формате Paradox или d. Base, рассматривается Delphi как единая база данных. Для переключения на другую базу данных нужно просто переключиться на другой директорий. Как уже было указано выше, Inter. Base сохраняет все таблицы в одном файле, имеющем расширение . GDB, поэтому этот файл и есть база данных Inter. Адреса Торент Трекеров.
Base. Он сохраняется в отдельном конфигурационном файле в произвольном месте на диске и позволяет исключить из программы прямое указание пути доступа к базе данных. Такой подход дает возможность располагать данные в любом месте, не перекомпилируя при этом программу.
Кроме пути доступа, в алиасе указываются тип базы данных, языковый драйвер и много другой управляющей информации. Поэтому использование алиасов позволяет легко переходить от локальных баз данных к SQL- серверным базам (естественно, при выполнении требований разделения приложения на клиентскую и серверную части). Для создания алиаса выберите страничку . В появившемся диалоговом окне введите имя алиаса и выберите его тип (тип базы данных) из выпадающего списка. Тип алиаса может быть стандартным (STANDARD) для работы с локальными базами в формате d. Base или Paradox или соответствовать наименованию SQL- сервера (Inter. Base, Sybase, Informix, Oracle и т.
Главное окно утилиты конфигурации BDE. Рис. 2: В диалоговом окне добавления нового алиаса можно указать имя алиаса и тип базы данных. После создания нового алиаса его имя появится в списке алиасов на той же страничке . Однако просто создать алиас не достаточно. Вам нужно указать дополнительную информацию, содержание которой зависит от типа выбранной базы данных. Например, для баз данных Paradox и d.
Base (STANDARD) требуется указать лишь путь доступа к данным. TYPESTANDARDPATHc: \users\data. SQL- сервер Inter.
Base требует задания десяти параметров, многие из которых можно оставить установленными по умолчанию (кроме, обычно, параметров SERVER NAME и USER NAME). TYPEINTRBASEPATH SERVER NAMEmyserv: g: \users\contacts. USER NAMESYSDBAOPEN MODEREAD/WRITESCHEMA CACHE SIZE8. LANGDRIVERPdox ANSI Cyrillic. SQLQRYMODE SQLPASSTHRU MODESHARED AUTOCOMMITSCHEMA CACHE TIME- 1. В этом примере база данных CONTACTS. GDB размещается в директории USERS, находящемся на диске G Windows NT сервера, называющегося MYSERV.
Имя пользователя при связи с базой данных по этому алиасу - SYSDBA. Остальные параметры - LANGDRIVER, SQLQRYMODE, SQLPASSTHRU MODE, SCHEMA CACHE SIZE и SCHEMA CACHE TIME рассмотрим подробней. Для правильной работы с русскими буквами при работе с базой данных формата d. Base нужно выбрать значение . Кроме того, на этапе создания базы данных Inter. Base необходимо указать CHARACTER SET (набор символов) WIN1. Он определяет режим передачи SQL- запросов и может иметь три значения.
NULL (пустая строка - режим по умолчанию) - запрос сначала посылается на SQL- сервер. Если сервер не может выполнить запрос, последний обрабатывается локально (это актуально для распределенных баз данных); SERVER - запрос посылается на SQL- сервер. Если сервер не может выполнить запрос, генерируется ошибка; LOCAL - запрос всегда выполняется на рабочей станции. Параметр SQLPASSTHRU MODE определяет, могут ли запросы, передаваемые для выполнения на сервер (passthrouh SQL, использующие set- ориентированный подход), и стандартные вызовы BDE (использующие record- ориентированный навигационный подход) обрабатываться в одном и том же сеансе соединения с базой данных (в одном и том же .
Он также может иметь три значения. SHARED AUTOCOMMIT (значение по умолчанию) - для каждой операции по одной строке таблицы автоматически стартует неявная транзакция, которая, в случае успеха, завершается оператором COMMIT (закрепляющим произведенные изменения). Такой подход наилучшим образом подходит для работы с локальными базами, но неэффективен для SQL- серверных баз данных, так как стартующие каждый раз новые транзакции значительно загружают сетевой траффик. SHARED NOAUTOCOMMIT - приложение должно явно стартовать и завершать транзакцию. Эта установка может привести к конфликтам в многопользовательской среде, где большое количество пользователей пытаются обновить одну и ту же строку таблицы.
NOT SHARED - означает, что запросы, передаваемые для выполнения на сервер (passthrouh SQL), и стандартные вызовы BDE (методы Delphi) используют раздельные соединения (. Для управления транзакциями через . Значение этого параметра может быть целым числом от 0 до 3. По умолчанию установлено число 8.
Может иметь следующие значения. Напомним, что установки по умолчанию параметров SQLQRYMODE, SQLPASSTHRU MODE, SCHEMA CACHE SIZE и SCHEMA CACHE TIME обеспечивают достаточно оптимальный режим работы с базой данных. Экспериментировать с ними для достижения наибольшей эффективности работы с конкретной базой данных желательно только после накопления некоторого опыта работы с BDE. В нем нужно указать не только имя сервера (на котором находится Ваша база данных) и полный путь доступа к базе, но и сетевой протокол. Создатели утилиты настройки BDE не сочли нужным выделять протокол в отдельный параметр, поэтому необходимо использовать следующие выражения. TCP/IP- . IB. Для того чтобы правильно указать имя сервера Oracle, нужно писать имя по правилам Oracle - перед именем поставить @. При доступе к SQL- серверным базам данных параметр PATH должен оставаться пустым, иначе ядро баз данных не сможет определить истинный путь к Вашей базе, и будет сгенерирована ошибка.
Однако, утилита настройки BDE позволяет специфицировать не только алиасы, но и драйверы для доступа к базам данных, а также различную системную информацию, составляющую операционное окружение этих самых алиасов. Системная информация располагается на страничках . Рассмотрим подробней эти странички. Установленные по умолчанию значения обеспечивают оптимальные параметры работы с таблицами Paradox. Однако, если у Вас возникают проблемы, Вы можете изменить минимальный и максимальный размер кэш- буфера (MINBUFSIZE, MAXBUFSIZE; значения по умолчанию соответственно 1.