Поделиться через


Выбор источника данных или драйвера

Источник данных или драйвер, используемый приложением, иногда жестко закодирован в приложении. Например, пользовательское приложение, написанное отделом MIS для передачи данных из одного источника данных в другой, будет содержать имена этих источников данных, приложение просто не будет работать с другими источниками данных. Другим примером является вертикальное приложение, например одно, используемое для записи заказа. Такое приложение всегда использует тот же источник данных, который имеет предопределенную схему, известную приложением.

Другие приложения выбирают источник данных или драйвер во время выполнения. Обычно это универсальные приложения, выполняющие нерегламентированные запросы, например электронная таблица, использующая ODBC для импорта данных. Такие приложения обычно перечисляют доступные источники данных или драйверы и позволяют пользователям выбирать те, с которыми они хотят работать. Независимо от того, использует ли приложение универсальные приложения источники данных, драйверы или оба часто зависят от того, использует ли приложение драйверы на основе СУБД или файлов.

Для драйверов на основе СУБД обычно требуется сложный набор сведений о подключении, например сетевой адрес, сетевой протокол, имя базы данных и т. д. Цель источника данных заключается в скрытии всех этих сведений. Поэтому парадигма источника данных позволяет использовать драйверы на основе СУБД. Приложение может отобразить список источников данных пользователю одним из двух способов. Он может вызывать SQLDriver Подключение с ключевое слово DSN (имя источника данных) и нет связанного значения. Диспетчер драйверов отобразит список имен источников данных. Если приложение хочет контролировать внешний вид списка, он вызывает SQLDataSources для получения списка доступных источников данных и создает собственное диалоговое окно. Эта функция реализуется диспетчером драйверов и может вызываться перед загрузкой драйверов. Затем приложение вызывает функцию подключения и передает ей имя выбранного источника данных.

Если источник данных не указан, используется источник данных по умолчанию, указанный системной информацией. (Дополнительные сведения см. в разделе Подраздел по умолчанию.) Если SQL Подключение вызывается с помощью аргумента ServerName, который не удается найти, является пустым указателем или имеет значение DEFAULT, диспетчер драйверов подключается к источнику данных по умолчанию. Источник данных по умолчанию также используется, если строка подключения, используемый в вызове SQLDriver Подключение или SQLBrowse Подключение содержит значение DSN ключевое слово значение DEFAULT или если указанный источник данных не найден. Кроме того, источник данных по умолчанию используется, если строка подключения, используемый в вызове SQLDriver Подключение не содержит ключевое слово DSN.

С помощью файловых драйверов можно использовать парадигму файлов. Для данных, хранящихся на локальном компьютере, пользователи часто знают, что их данные хранятся в определенном файле, например Employee.dbf. Вместо выбора неизвестного источника данных такие пользователи могут выбрать файл, который они знают. Чтобы реализовать это, приложение сначала вызывает SQLDrivers. Эта функция реализуется диспетчером драйверов и может вызываться перед загрузкой драйверов. SQLDrivers возвращает список доступных драйверов. Он также возвращает значения для ключевое слово FileUsage и FileExtns. В ключевое слово FileUsage объясняется, рассматриваются ли драйверы на основе файлов как таблицы, как и Xbase или базы данных, как и Microsoft Access. В ключевое слово FileExtns перечислены расширения имени файла, распознаваемого драйвером, например DBF для драйвера Xbase. Используя эти сведения, приложение создает диалоговое окно, с помощью которого пользователь выбирает файл. В зависимости от расширения выбранного файла приложение затем подключается к драйверу, вызвав SQLDriver Подключение с драйвером ключевое слово.

Нет ничего, чтобы остановить использование приложения с источником данных с драйвером на основе файлов или вызовом SQLDriver Подключение с драйвером driver ключевое слово для подключения к драйверу на основе СУБД. Ниже приведено несколько распространенных способов использования драйвера ключевое слово для драйверов на основе СУБД:

  • Не создавайте источники данных. Например, пользовательское приложение может использовать конкретный драйвер и базу данных. Если имя драйвера и все сведения, необходимые для подключения к базе данных, жестко закодированы в приложении, пользователям не нужно создавать источник данных на своем компьютере для запуска приложения. Все, что необходимо сделать, — установить приложение и драйвер.

    Недостатком этого метода является то, что приложение должно быть перекомпилировано и перераспространяется, если сведения о подключении изменяются. Если имя источника данных жестко закодировано в приложении, а не полные сведения о подключении, каждый пользователь должен изменить только сведения в источнике данных.

  • Доступ к определенной СУБД за один раз. Например, электронная таблица, извлекающая данные путем вызова функций ODBC, может содержать драйвер ключевое слово для идентификации определенного драйвера. Так как имя драйвера имеет смысл для всех пользователей, имеющих этот драйвер, электронная таблица может быть передана среди этих пользователей. Если электронная таблица содержит имя источника данных, каждому пользователю придется создать один источник данных для использования электронной таблицы.

  • Просмотр системы для всех баз данных, доступных конкретному драйверу. Дополнительные сведения см. в разделе Подключение ing с помощью SQLBrowse Подключение далее в этом разделе.