Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если приложение использует SQLConnect и должно запрашивать пользователю любую информацию о подключении, например имя пользователя и пароль, это необходимо сделать самостоятельно. Хотя это позволяет приложению управлять своим "внешним видом и чувством", оно может заставить приложение содержать код для конкретного драйвера. Это происходит, когда приложению требуется запрашивать пользователю сведения о подключении для конкретного драйвера. Это представляет собой невозможное положение для универсальных приложений, которые предназначены для работы с любыми и всеми драйверами, включая драйверы, которые не существуют при написании приложения.
SQLDriverConnect может запрашивать у пользователя сведения о подключении. Например, пользовательская программа, упоминаемая ранее, может передать следующую строку подключения в SQLDriverConnect:
DSN=XYZ Corp;
Затем драйвер может отобразить диалоговое окно, которое запрашивает идентификаторы пользователей и пароли, как показано на следующем рисунке.
То, что драйвер может запрашивать информацию о подключении, особенно полезно для универсальных и вертикальных приложений. Эти приложения не должны содержать сведения, относящиеся к драйверу, и запрос драйвера на наличие необходимых сведений сохраняет эти сведения вне приложения. Это показано в предыдущих двух примерах. Когда приложение передает только имя источника данных драйверу, приложение не содержит никаких сведений о драйвере и поэтому не привязано к конкретному драйверу. Когда приложение передало полную строку подключения драйверу, оно было привязано к драйверу, который может интерпретировать такую строку.
Универсальное приложение может выполнить этот шаг дальше и даже не указать источник данных. Когда SQLDriverConnect получает пустую строку подключения, диспетчер драйверов отображает следующее диалоговое окно.
После выбора источника данных диспетчер драйверов создает строку подключения, указывающую источник данных и передает его драйверу. Затем драйвер может предложить пользователю дополнительные сведения, необходимые ему.
Условия, при которых драйвер запрашивает у пользователя, управляются флагом DriverCompletion, есть варианты всегда запрашивать, запрашивать при необходимости или никогда не запрашивать. Полное описание этого флага см. в описании функции SQLDriverConnect .