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


Использование ключевых слов строки подключения с драйвером OLE DB для SQL Server

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

Скачать драйвер OLE DB

Некоторые API OLE DB Driver for SQL Server используют строки подключения, чтобы указать атрибуты подключения. Строки подключения — это список ключевых слов и связанных значений, причем каждое ключевое слово определяет определенный атрибут соединения.

Примечание.

Драйвер OLE DB для SQL Server поддерживает неоднозначность строк соединения для обеспечения обратной совместимости (например, некоторые ключевые слова могут быть указаны несколько раз, и конфликты ключевых слов могут разрешаться на основании их положения или приоритета). В следующих версиях OLE DB Driver for SQL Server неоднозначность в строках подключения может стать недопустимой. При изменении приложения для работы с OLE DB Driver for SQL Server необходимо предусмотреть устранение любых зависимостей от неоднозначности строки соединения.

В следующих разделах описываются ключевые слова, которые могут использоваться с OLE DB Driver for SQL Server и объектами данных ActiveX (ADO) при использовании OLE DB Driver for SQL Server в качестве поставщика данных.

Ключевые слова в строке подключения драйвера OLE DB

Приложения OLE DB могут инициализировать объекты источника данных двумя способами:

  • IDBInitialize::Initialize

  • IDataInitialize::GetDataSource

В первом случае строка поставщика может использоваться для инициализации свойств соединения посредством установки свойства DBPROP_INIT_PROVIDERSTRING в наборе свойств DBPROPSET_DBINIT. Во втором случае строка инициализации может быть передана методу IDataInitialize::GetDataSource для инициализации свойств соединения. При использовании каждого из этих методов инициализируются одни и те же свойства соединения OLE DB, однако, для этого применяются разные наборы ключевых слов. Набор ключевых слов, используемых методом IDataInitialize::GetDataSource, представляет собой по меньшей мере описание свойств, входящих в группу свойств инициализации.

Для любого параметра, указанного в строке поставщика, который имеет соответствующее свойство OLE DB, устанавливаемое в некоторое значение по умолчанию или явным образом установленное в некоторое значение, значение свойства OLE DB переопределяет значение, указанное в строке поставщика.

Логические свойства, установленные в строках поставщика через значения DBPROP_INIT_PROVIDERSTRING, устанавливаются с помощью значений yes и no. Логические свойства, установленные в строках инициализации с помощью метода IDataInitialize::GetDataSource, устанавливаются с использованием значений true и false.

Приложения, использующие метод IDataInitialize::GetDataSource, также могут использовать ключевые слова, используемые методом IDBInitialize::Initialize, но только для свойств, у которых отсутствуют значения по умолчанию. Если приложение одновременно использует в строке инициализации ключевые слова методов IDataInitialize::GetDataSource и IDBInitialize::Initialize, используется ключевое слово метода IDataInitialize::GetDataSource. Не рекомендуется использовать в приложениях ключевые слова IDBInitialize::Initialize в строках подключения IDataInitialize:GetDataSource, так как это поведение может не поддерживаться в будущих версиях.

Примечание.

Строка подключения, передаваемая в метод IDataInitialize::GetDataSource, преобразуется в свойства, которые применяются методом IDBProperties::SetProperties. Если службы компонентов обнаруживают описание свойства в IDBProperties::GetPropertyInfo, это свойство будет применяться в качестве изолированного. В противном случае оно будет применяться через свойство DBPROP_PROVIDERSTRING. Например, если указать строку подключения Data Source=server1;Server=server2, ключевое слово Data Source будет задано в качестве свойства, но Server перейдет в строку поставщика.

Если указать несколько экземпляров одного свойства поставщика, то будет использоваться первое значение первого свойства.

Использование IDBInitialize::Initialize

Строки подключения, используемые в приложениях OLE DB, в которых используется DBPROP_INIT_PROVIDERSTRING и IDBInitialize::Initialize, имеют следующий синтаксис.

  • connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

  • empty-string ::=

  • attribute ::= attribute-keyword=[{]attribute-value[}]

  • attribute-value ::= character-string

  • attribute-keyword ::= identifier

Значения атрибутов можно (и рекомендуется) дополнительно заключить в фигурные скобки. В этом случае можно избежать проблем, если значения атрибутов содержат символы, отличные от буквенно-цифровых. Предполагается, что первая закрывающая фигурная скобка в значении служит признаком конца значения, поэтому само значение не может содержать символы закрывающей фигурной скобки.

Пробельный символ после знака равенства (=) в строке подключения будет считаться литералом, даже если значение заключено в кавычки.

В следующей таблице рассматриваются ключевые слова, которые можно использовать со свойством DBPROP_INIT_PROVIDERSTRING.

Ключевое слово Свойство инициализации Description
Addr SSPROP_INIT_NETWORKADDRESS Синоним для Address.
Адрес SSPROP_INIT_NETWORKADDRESS Сетевой адрес сервера, на котором выполняется экземпляр SQL Server. Address обычно является сетевым именем сервера, но может быть и другим именем, например именем канала, IP-адресом или портом TCP/IP с адресом сокета.

Если указать IP-адрес, убедитесь, что протоколы TCP/IP или именованных каналов включены в диспетчер конфигурации SQL Server.

При использовании OLE DB Driver for SQL Server значение слова Address будет приоритетнее значения, передаваемого в ключевое слово Server в строках подключения. Также следует отметить, что строка Address=; соединяется с сервером, указанным в ключевом слове Server, а при использовании ключевых слов Address= ;, Address=.;, Address=localhost; и Address=(local);устанавливается соединение с локальным сервером.

Далее представлен полный синтаксис ключевого слова Address.

[protocol:]Address[,port |\pipe\pipename]

Параметрпротокол может иметь значение tcp (TCP/IP), lpc (общая память) или np (именованные каналы). Дополнительные сведения см. в статье Настройка клиентских протоколов.

Если ни протокол, ни ключевое слово "Сеть" не указано, OLE DB Driver for SQL Server будет использовать порядок протокола, указанный в диспетчер конфигурации SQL Server.

port — это порт указанного сервера, к которому выполняется подключение. По умолчанию SQL Server использует порт 1433.
APP SSPROP_INIT_APPNAME Строка, идентифицирующая приложение.
ApplicationIntent SSPROP_INIT_APPLICATIONINTENT Объявляет тип рабочей нагрузки приложения при соединении с сервером. Возможные значения: ReadOnly и ReadWrite.

Значение по умолчанию — ReadWrite. Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
AttachDBFileName SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать ключевое слово AttachDBFileName, необходимо также указать имя базы данных с помощью ключевого слова Database в строке поставщика. Если база данных была подключена ранее, SQL Server не повторно прикрепить ее (она использует присоединенную базу данных в качестве значения по умолчанию для подключения).
Authentication1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryPassword:Идентификатор пользователя и проверка подлинности паролей с помощью удостоверения Microsoft Entra.
  • ActiveDirectoryIntegrated: Встроенная проверка подлинности с идентификатором Microsoft Entra.

  • ПРИМЕЧАНИЕ. Ключевое ActiveDirectoryIntegrated слово также можно использовать для проверка подлинности Windows в SQL Server. Оно заменяет ключевые слова проверки подлинности Integrated Security или Trusted_Connection. Рекомендуется присвоить ключевому слову Authentication (или его соответствующему свойству) значение ActiveDirectoryIntegrated в приложениях, использующих ключевые слова Integrated Security или Trusted_Connection (или их соответствующие свойства). Это позволит активировать новое поведение проверки сертификата и шифрования.

  • ActiveDirectoryInteractive: Интерактивная проверка подлинности с помощью удостоверения Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI:Проверка подлинности управляемого удостоверения. Для назначенного пользователем удостоверения в качестве идентификатора пользователя задается идентификатор объекта удостоверения пользователя.
  • ActiveDirectoryServicePrincipal: Проверка подлинности с помощью субъекта-службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • SqlPassword: проверка подлинности с помощью идентификатора пользователя и пароля.

  • ПРИМЕЧАНИЕ. Рекомендуется, чтобы приложения, использующие SQL Server проверку подлинности, задали значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Автоматическое преобразование SSPROP_INIT_AUTOTRANSLATE Синоним для AutoTranslate.
AutoTranslate SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения yes и no.
ConnectRetryCount SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 означает, что попытки повторного подключения не будут предприниматься. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
ConnectRetryInterval SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
База данных DBPROP_INIT_CATALOG Имя базы данных.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Указывает используемый режим обработки типов данных. Распознаются значения 0 (для типов данных поставщика) и 80 (для типов данных SQL Server 2000).
Encrypt1 SSPROP_INIT_ENCRYPT Указывает, необходимо ли шифрование данных перед их отправкой по сети. Возможные значения: Optional, Mandatoryи Strict. Значение по умолчанию — Mandatory. Сведения о версиях 18.x.x см. в статье об основных различиях версий MSOLEDBSQL.
FailoverPartner SSPROP_INIT_FAILOVERPARTNER Имя сервера отработки отказа, используемого для зеркального отображения базы данных.
FailoverPartnerSPN SSPROP_INIT_FAILOVERPARTNERSPN Имя участника-службы для партнера по обеспечению отработки отказа. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
HostNameInCertificate SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Если не задано ключевое слово HostNameInCertificate, драйвер в URL-адресе соединения использует ключевое слово Сервер в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
ПРИМЕЧАНИЕ. Это свойство не учитывается, если сертификат сервера является доверенным. Если для параметра Шифрование задано значение Strict, сертификат всегда будет проверяться.
Язык SSPROP_INIT_CURRENTLANGUAGE Язык SQL Server.
MarsConn SSPROP_INIT_MARSCONNECTION Включает или отключает несколько активных результирующих наборов (MARS) на подключении, если сервер — SQL Server 2005 (9.x) или более поздней версии. Возможные значения: yes и no. Значение по умолчанию — no.
MultiSubnetFailover SSPROP_INIT_MULTISUBNETFAILOVER Всегда указывать MultiSubnetFailover=Yes при подключении к прослушивателю группы доступности группы доступности SQL Server или экземпляру отказоустойчивого кластера SQL Server. MultiSubnetFailover=Yes настраивает драйвер OLE DB для SQL Server для ускоренного обнаружения активного (в данный момент) сервера и подключения к нему. Возможные значения: Yes и No. Значение по умолчанию — No. Например:

MultiSubnetFailover=Yes

Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
Net SSPROP_INIT_NETWORKLIBRARY Синоним для Network.
Сеть SSPROP_INIT_NETWORKLIBRARY Сетевая библиотека, используемая для установления подключения к экземпляру SQL Server в организации.
Network Library SSPROP_INIT_NETWORKLIBRARY Синоним для Network.
PacketSize SSPROP_INIT_PACKETSIZE Размер пакета потока табличных данных (TDS). Значением по умолчанию является 0 (фактическое значение будет определяться сервером).
PersistSensitive DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Принимает в качестве значений строки yes и no. Если указано значение no, объекту источника данных не разрешено сохранять конфиденциальные сведения проверки подлинности.
PWD DBPROP_AUTH_PASSWORD Пароль для входа SQL Server.
Сервер DBPROP_INIT_DATASOURCE Имя экземпляра SQL Server. Значение должно быть либо именем сервера в сети, IP-адресом или именем псевдонима диспетчер конфигурации SQL Server.

Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере.

Ключевое слово Address переопределяет ключевое слово Server.

Чтобы подключиться к экземпляру по умолчанию на локальном сервере, можно указать один из следующих вариантов:

Server=;

Server=.;

Server=(local);

Server=(local);

Server=(localhost);

Server=(localdb)\instancename;

Дополнительные сведения о поддержке LocalDB см. в этой статье.

Чтобы указать именованный экземпляр SQL Server, добавьте \имя экземпляра.

Если сервер не указан, устанавливается соединение с экземпляром по умолчанию на локальном компьютере.

Если указать IP-адрес, убедитесь, что протоколы TCP/IP или именованных каналов включены в диспетчер конфигурации SQL Server.

Далее представлен полный синтаксис ключевого слова Server.

Server=[protocol:]Server[,port]

Параметрпротокол может иметь значение tcp (TCP/IP), lpc (общая память) или np (именованные каналы).

В следующем примере указывается именованный канал:

np:\\.\pipe\MSSQL$MYINST01\sql\query

Приведенная выше строка указывает протокол именованного канала (np), именованный канал на локальном компьютере (), имя экземпляра SQL Server (MSSQL$MYINST01\\.\pipe) и имя именованного канала (sql/query).

Если ни протокол, ни ключевое слово "Сеть" не указано, OLE DB Driver for SQL Server будет использовать порядок протокола, указанный в диспетчер конфигурации SQL Server.

port — это порт указанного сервера, к которому выполняется подключение. По умолчанию SQL Server использует порт 1433.

При использовании OLE DB Driver for SQL Server пробелы в начале значения, передаваемого в ключевое слово Server строки подключения, не учитываются.
ServerCertificate SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. При указании сертификат SQL Server проверяется, проверяется, соответствует ли предоставленный сертификат точному совпадению.
ServerSPN SSPROP_INIT_SERVERSPN Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
Время ожидания DBPROP_INIT_TIMEOUT Время (в секундах), в течение которого ожидается завершение инициализации источника данных.
TransparentNetworkIPResolution SSPROP_INIT_TNIR Влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает и имеется несколько IP-адресов, связанных с именем этого узла. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Возможные значения: Yes и No. Значение по умолчанию — Yes. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети.
Trusted_Connection DBPROP_AUTH_INTEGRATED Если задано значение yes, это параметр предписывает OLE DB Driver for SQL Server использовать проверку подлинности Windows для проверки имени для входа. В противном случае драйвер OLE DB для SQL Server будет использовать имя пользователя и пароль SQL Server для проверки входа, а ключевые слова UID и PWD должны быть указаны.
TrustServerCertificate1 SSPROP_INIT_TRUST_SERVER_CERTIFICATE Принимает в качестве значений строки yes и no. По умолчанию имеет значение no, которое указывает, что сертификат сервера будет проверяться.
UID DBPROP_AUTH_USERID Имя входа SQL Server.
UseFMTONLY SSPROP_INIT_USEFMTONLY Определяет, как метаданные извлекаются при подключении к SQL Server 2012 (11.x) и более поздней версии. Возможные значения: yes и no. Значение по умолчанию — no.

По умолчанию OLE DB Driver for SQL Server использует хранимые процедуры sp_describe_first_result_set и sp_describe_undeclared_parameters для извлечения метаданных. Эти хранимые процедуры имеют некоторые ограничения (например, их выполнение при обработке временных таблиц закончится сбоем). Если для параметра UseFMTONLY установлено значение yes, драйвер должен использовать SET FMTONLY для извлечения метаданных.
UseProcForPrepare SSPROP_INIT_USEPROCFORPREP Это ключевое слово является устаревшим, и OLE DB Driver for SQL Server не обрабатывает его значение.
WSID SSPROP_INIT_WSID Идентификатор рабочей станции.

[1]. Для повышения безопасности, шифрования и проверки сертификатов изменяется при использовании свойств инициализации маркера проверки подлинности или маркера доступа или соответствующих ключевых слов строка подключения. Дополнительные сведения см. в разделе Шифрование и проверка сертификатов.

Использование IDataInitialize::GetDataSource

Строки подключения, используемые приложениями OLE DB, в которых используется IDataInitialize::GetDataSource, имеют следующий синтаксис.

  • connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

  • empty-string ::=

  • attribute ::= attribute-keyword=[quote]attribute-value[quote]

  • attribute-value ::= character-string

  • attribute-keyword ::= identifier

  • quote ::= " | '

Использование свойства должно соответствовать синтаксическим правилам, действующим в его области. Например, в WSID вместо кавычек используются фигурные скобки ({}), а в Application Name используются апострофы (') или двойные кавычки ("). Заключать в кавычки можно только строковые свойства. Заключение в кавычки целочисленного или перечисляемого свойства приведет к ошибке Connection String doesn't conform to OLE DB specification.

Значения атрибутов можно при желании заключать в одинарные или двойные кавычки, а фактически это даже рекомендуется. В этом случае можно избежать проблем, если значения содержат символы, отличные от буквенно-цифровых. Используемый символ кавычек может также использоваться в значении, если оно заключено в двойные кавычки.

Пробельный символ после знака равенства (=) в строке подключения будет считаться литералом, даже если значение заключено в кавычки.

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

В следующей таблице рассматриваются ключевые слова, которые можно использовать с IDataInitialize::GetDataSource.

Ключевое слово Свойство инициализации Description
Маркер доступа1 SSPROP_AUTH_ACCESS_TOKEN Маркер доступа, используемый для проверки подлинности в идентификаторе Microsoft Entra.

ПРИМЕЧАНИЕ. Это ошибка, чтобы указать это ключевое слово, а также UID, PWDTrusted_Connectionили Authentication строка подключения ключевые слова или соответствующие свойства/ключевые слова.
Имя приложения SSPROP_INIT_APPNAME Строка, идентифицирующая приложение.
Application Intent SSPROP_INIT_APPLICATIONINTENT Объявляет тип рабочей нагрузки приложения при соединении с сервером. Возможные значения: ReadOnly и ReadWrite.

Значение по умолчанию — ReadWrite. Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
Authentication1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryPassword:Идентификатор пользователя и проверка подлинности паролей с помощью удостоверения Microsoft Entra.
  • ActiveDirectoryIntegrated: Встроенная проверка подлинности с идентификатором Microsoft Entra.

  • ПРИМЕЧАНИЕ. Ключевое ActiveDirectoryIntegrated слово также можно использовать для проверка подлинности Windows в SQL Server. Оно заменяет ключевые слова проверки подлинности Integrated Security или Trusted_Connection. Рекомендуется присвоить ключевому слову Authentication (или его соответствующему свойству) значение ActiveDirectoryIntegrated в приложениях, использующих ключевые слова Integrated Security или Trusted_Connection (или их соответствующие свойства). Это позволит активировать новое поведение проверки сертификата и шифрования.

  • ActiveDirectoryInteractive: Интерактивная проверка подлинности с помощью удостоверения Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI:Проверка подлинности управляемого удостоверения. Для назначенного пользователем удостоверения в качестве идентификатора пользователя задается идентификатор объекта удостоверения пользователя.
  • ActiveDirectoryServicePrincipal: Проверка подлинности с помощью субъекта-службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • SqlPassword: проверка подлинности с помощью идентификатора пользователя и пароля.

  • ПРИМЕЧАНИЕ. Рекомендуется, чтобы приложения, использующие SQL Server проверку подлинности, задали значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Автоматическое преобразование SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения true и false.
Connect Timeout DBPROP_INIT_TIMEOUT Время (в секундах), в течение которого ожидается завершение инициализации источника данных.
Подключение счетчика повторных попыток SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 означает, что попытки повторного подключения не будут предприниматься. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
Интервал повтора подключения SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
Current Language SSPROPT_INIT_CURRENTLANGUAGE Имя языка SQL Server.
Источник данных DBPROP_INIT_DATASOURCE Имя экземпляра SQL Server в организации.

Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова Server в этой статье.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Указывает используемый режим обработки типов данных. Распознанные значения предназначены 0 для типов данных поставщика и 80 для типов данных SQL Server 2000 (8.x).
Failover Partner SSPROP_INIT_FAILOVERPARTNER Имя сервера отработки отказа, используемого для зеркального отображения базы данных.
Failover Partner SPN SSPROP_INIT_FAILOVERPARTNERSPN Имя участника-службы для партнера по обеспечению отработки отказа. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
Имя узла в сертификате SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Если не задано ключевое слово Имя узла в сертификате, драйвер в URL-адресе соединения использует ключевое слово Источник данных в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
ПРИМЕЧАНИЕ. Это свойство не учитывается, если сертификат сервера является доверенным. Если для параметра Использовать шифрование данных задано значение Strict, сертификат всегда будет проверяться.
Исходный каталог DBPROP_INIT_CATALOG Имя базы данных.
Исходное имя файла SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать ключевое слово AttachDBFileName, необходимо также указать имя базы данных с помощью ключевого слова DATABASE в строке поставщика. Если база данных была подключена ранее, SQL Server не повторно прикрепить ее (она использует присоединенную базу данных в качестве значения по умолчанию для подключения).
Встроенные функции безопасности DBPROP_AUTH_INTEGRATED Принимает значение SSPI для проверки подлинности Windows.
MARS Connection SSPROP_INIT_MARSCONNECTION Включает или отключает режим MARS для соединения. Распознаются значения true и false. Значение по умолчанию — false.
MultiSubnetFailover SSPROP_INIT_MULTISUBNETFAILOVER Всегда указывать MultiSubnetFailover=True при подключении к прослушивателю группы доступности группы доступности SQL Server или экземпляру отказоустойчивого кластера SQL Server. MultiSubnetFailover=True настраивает драйвер OLE DB для SQL Server для ускоренного обнаружения активного (в данный момент) сервера и подключения к нему. Возможные значения: True и False. Значение по умолчанию — False. Например:

MultiSubnetFailover=True

Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
Network Address SSPROP_INIT_NETWORKADDRESS Сетевой адрес экземпляра SQL Server в организации.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова Address в этой статье.
Network Library SSPROP_INIT_NETWORKLIBRARY Сетевая библиотека, используемая для установления подключения к экземпляру SQL Server в организации.
Packet Size SSPROP_INIT_PACKETSIZE Размер пакета потока табличных данных (TDS). Значением по умолчанию является 0 (фактическое значение будет определяться сервером).
Пароль DBPROP_AUTH_PASSWORD Пароль для входа SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Принимает в качестве значений строки true и false. Если используется значение false, объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности.
Поставщик Для OLE DB Driver for SQL Server необходимо указать "MSOLEDBSQL19" или "MSOLEDBSQL".
Сертификат сервера SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. При указании сертификат SQL Server проверяется, проверяется, соответствует ли предоставленный сертификат точному совпадению.
Server SPN SSPROP_INIT_SERVERSPN Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
TransparentNetworkIPResolution SSPROP_INIT_TNIR Влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает и имеется несколько IP-адресов, связанных с именем этого узла. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Возможные значения: True и False. Значение по умолчанию — True. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети.
Надежный сертификат сервера1 SSPROP_INIT_TRUST_SERVER_CERTIFICATE Принимает в качестве значений строки true и false. По умолчанию имеет значение false, которое указывает, что сертификат сервера будет проверяться.
Использование шифрования данных1 SSPROP_INIT_ENCRYPT Указывает, необходимо ли шифрование данных перед их отправкой по сети. Возможные значения: Optional, Mandatoryи Strict. Значение по умолчанию — Mandatory. Сведения о версиях 18.x.x см. в статье об основных различиях версий MSOLEDBSQL.
Use FMTONLY SSPROP_INIT_USEFMTONLY Определяет, как метаданные извлекаются при подключении к SQL Server 2012 (11.x) и более поздней версии. Возможные значения: true и false. Значение по умолчанию — false.

По умолчанию OLE DB Driver for SQL Server использует хранимые процедуры sp_describe_first_result_set и sp_describe_undeclared_parameters для извлечения метаданных. Эти хранимые процедуры имеют некоторые ограничения (например, их выполнение при обработке временных таблиц закончится сбоем). Если для параметра Use FMTONLY установлено значение true, драйвер должен использовать SET FMTONLY для извлечения метаданных.
Код пользователя DBPROP_AUTH_USERID Имя входа SQL Server.
Workstation ID SSPROP_INIT_WSID Идентификатор рабочей станции.

[1]. Для повышения безопасности, шифрования и проверки сертификатов изменяется при использовании свойств инициализации маркера проверки подлинности или маркера доступа или соответствующих ключевых слов строка подключения. Дополнительные сведения см. в разделе о шифровании и проверке сертификатов.

Примечание.

В строке подключения свойство Old Password устанавливает значение свойства SSPROP_AUTH_OLD_PASSWORD, являющееся текущим паролем (возможно, с истекшим сроком действия), недоступным через свойство строки поставщика.

Ключевые слова строки подключения объектов данных ActiveX (ADO)

Приложения ADO устанавливают свойство ConnectionString объектов ADODBConnection или указывают строку подключения как параметр метода Open объектов ADODBConnection.

В приложениях ADO также могут применяться ключевые слова, используемые методом OLE DB IDBInitialize::Initialize, но только для свойств, у которых отсутствует значение по умолчанию. Если в строке инициализации приложения содержатся ключевые слова ADO и ключевые слова IDBInitialize::Initialize, используется параметр ключевого слова ADO. Рекомендуется, чтобы приложение использовало для строк соединения только ключевые слова ADO.

Строки подключения, используемые ADO, имеют следующий синтаксис:

  • connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string

  • empty-string ::=

  • attribute ::= attribute-keyword=["]attribute-value["]

  • attribute-value ::= character-string

  • attribute-keyword ::= identifier

Значения атрибутов можно (и рекомендуется) дополнительно заключить в двойные кавычки. В этом случае можно избежать проблем, если значения содержат символы, отличные от буквенно-цифровых. Значения атрибутов не могут содержать двойные кавычки.

В следующей таблице описываются ключевые слова, которые можно использовать со строками соединения ADO.

Ключевое слово Свойство инициализации Description
Маркер доступа1 SSPROP_AUTH_ACCESS_TOKEN Маркер доступа, используемый для проверки подлинности в идентификаторе Microsoft Entra.

ПРИМЕЧАНИЕ. Это ошибка, чтобы указать это ключевое слово, а также UID, PWDTrusted_Connectionили Authentication строка подключения ключевые слова или соответствующие свойства/ключевые слова.
Application Intent SSPROP_INIT_APPLICATIONINTENT Объявляет тип рабочей нагрузки приложения при соединении с сервером. Возможные значения: ReadOnly и ReadWrite.

Значение по умолчанию — ReadWrite. Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
Имя приложения SSPROP_INIT_APPNAME Строка, идентифицирующая приложение.
Authentication1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryPassword:Идентификатор пользователя и проверка подлинности паролей с помощью удостоверения Microsoft Entra.
  • ActiveDirectoryIntegrated: Встроенная проверка подлинности с идентификатором Microsoft Entra.

  • ПРИМЕЧАНИЕ. Ключевое ActiveDirectoryIntegrated слово также можно использовать для проверка подлинности Windows в SQL Server. Оно заменяет ключевые слова проверки подлинности Integrated Security или Trusted_Connection. Рекомендуется присвоить ключевому слову Authentication (или его соответствующему свойству) значение ActiveDirectoryIntegrated в приложениях, использующих ключевые слова Integrated Security или Trusted_Connection (или их соответствующие свойства). Это позволит активировать новое поведение проверки сертификата и шифрования.

  • ActiveDirectoryInteractive: Интерактивная проверка подлинности с помощью удостоверения Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI:Проверка подлинности управляемого удостоверения. Для назначенного пользователем удостоверения в качестве идентификатора пользователя задается идентификатор объекта удостоверения пользователя.
  • ActiveDirectoryServicePrincipal: Проверка подлинности с помощью субъекта-службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • SqlPassword: проверка подлинности с помощью идентификатора пользователя и пароля.

  • ПРИМЕЧАНИЕ. Рекомендуется, чтобы приложения, использующие SQL Server проверку подлинности, задали значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Автоматическое преобразование SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения true и false.
Connect Timeout DBPROP_INIT_TIMEOUT Время (в секундах), в течение которого ожидается завершение инициализации источника данных.
Подключение счетчика повторных попыток SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 означает, что попытки повторного подключения не будут предприниматься. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
Интервал повтора подключения SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения.
Current Language SSPROPT_INIT_CURRENTLANGUAGE Имя языка SQL Server.
Источник данных DBPROP_INIT_DATASOURCE Имя экземпляра SQL Server в организации.

Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова Server в этой статье.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Задает используемый режим обработки типов данных. Распознаются значения 0 (для типов данных поставщика) и 80 (для типов данных SQL Server 2000).
Failover Partner SSPROP_INIT_FAILOVERPARTNER Имя сервера отработки отказа, используемого для зеркального отображения базы данных.
Failover Partner SPN SSPROP_INIT_FAILOVERPARTNERSPN Имя участника-службы для партнера по обеспечению отработки отказа. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
Имя узла в сертификате SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Если не задано ключевое слово Имя узла в сертификате, драйвер в URL-адресе соединения использует ключевое слово Источник данных в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
ПРИМЕЧАНИЕ. Это свойство не учитывается, если сертификат сервера является доверенным. Если для параметра Использовать шифрование данных задано значение Strict, сертификат всегда будет проверяться.
Исходный каталог DBPROP_INIT_CATALOG Имя базы данных.
Исходное имя файла SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать ключевое слово AttachDBFileName, необходимо также указать имя базы данных с помощью ключевого слова DATABASE в строке поставщика. Если база данных была подключена ранее, SQL Server не повторно прикрепить ее (она использует присоединенную базу данных в качестве значения по умолчанию для подключения).
Встроенные функции безопасности DBPROP_AUTH_INTEGRATED Принимает значение SSPI для проверки подлинности Windows.
MARS Connection SSPROP_INIT_MARSCONNECTION Включает или отключает несколько активных результирующих наборов (MARS) на подключении, если сервер — SQL Server 2005 (9.x) или более поздней версии. Распознаются значения true и false. Значение по умолчанию — false.
MultiSubnetFailover SSPROP_INIT_MULTISUBNETFAILOVER Всегда указывать MultiSubnetFailover=True при подключении к прослушивателю группы доступности группы доступности SQL Server или экземпляру отказоустойчивого кластера SQL Server. MultiSubnetFailover=True настраивает драйвер OLE DB для SQL Server для ускоренного обнаружения активного (в данный момент) сервера и подключения к нему. Возможные значения: True и False. Значение по умолчанию — False. Например:

MultiSubnetFailover=True

Дополнительные сведения о поддержке OLE DB Driver for SQL Server для групп доступности AlwaysOn см. в разделе OLE DB Driver for SQL Server Support for High Availability, Аварийное восстановление.
Network Address SSPROP_INIT_NETWORKADDRESS Сетевой адрес экземпляра SQL Server в организации.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова Address в этой статье.
Network Library SSPROP_INIT_NETWORKLIBRARY Сетевая библиотека, используемая для установления подключения к экземпляру SQL Server в организации.
Packet Size SSPROP_INIT_PACKETSIZE Размер пакета потока табличных данных (TDS). Значением по умолчанию является 0 (фактическое значение будет определяться сервером).
Пароль DBPROP_AUTH_PASSWORD Пароль для входа SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Принимает в качестве значений строки true и false. Если используется значение false, объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности.
Поставщик В случае OLE DB Driver for SQL Server значение — MSOLEDBSQL19 или MSOLEDBSQL.
Сертификат сервера SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. При указании сертификат SQL Server проверяется, проверяется, соответствует ли предоставленный сертификат точному совпадению.
Server SPN SSPROP_INIT_SERVERSPN Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком.
TransparentNetworkIPResolution SSPROP_INIT_TNIR Влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает и имеется несколько IP-адресов, связанных с именем этого узла. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Возможные значения: True и False. Значение по умолчанию — True. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети.
Надежный сертификат сервера1 SSPROP_INIT_TRUST_SERVER_CERTIFICATE Принимает в качестве значений строки true и false. По умолчанию имеет значение false, которое указывает, что сертификат сервера будет проверяться.
Использование шифрования данных1 SSPROP_INIT_ENCRYPT Указывает, необходимо ли шифрование данных перед их отправкой по сети. Возможные значения: Optional, Mandatoryи Strict. Значение по умолчанию — Mandatory. Сведения о версиях 18.x.x см. в статье об основных различиях версий MSOLEDBSQL.
Use FMTONLY SSPROP_INIT_USEFMTONLY Определяет, как метаданные извлекаются при подключении к SQL Server 2012 (11.x) и более поздней версии. Возможные значения: true и false. Значение по умолчанию — false.

По умолчанию OLE DB Driver for SQL Server использует хранимые процедуры sp_describe_first_result_set и sp_describe_undeclared_parameters для извлечения метаданных. Эти хранимые процедуры имеют некоторые ограничения (например, их выполнение при обработке временных таблиц закончится сбоем). Если для параметра Use FMTONLY установлено значение true, драйвер должен использовать SET FMTONLY для извлечения метаданных.
Код пользователя DBPROP_AUTH_USERID Имя входа SQL Server.
Workstation ID SSPROP_INIT_WSID Идентификатор рабочей станции.

[1]. Для повышения безопасности, шифрования и проверки сертификатов изменяется при использовании свойств инициализации маркера проверки подлинности или маркера доступа или соответствующих ключевых слов строка подключения. Дополнительные сведения см. в разделе о шифровании и проверке сертификатов.

Примечание.

В строке подключения свойство "Old Password" устанавливает значение свойства SSPROP_AUTH_OLD_PASSWORD, являющееся текущим паролем (возможно, с истекшим сроком действия), недоступным через свойство строки поставщика.

См. также

Создание приложений с помощью драйвера OLE DB для SQL Server