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

Относится к:SQL ServerБаза данных SQL AzureУправляемый экземпляр SQL AzureAzure Synapse AnalyticsАналитическая платформа (PDW)SQL база данных в Microsoft Fabric

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

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

Примечание.

OLE DB Driver for 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.

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

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

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

Полный синтаксис ключевого Address слова выглядит следующим образом:

[протокол:]Адрес[,port|]

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

Если ни протокол , ни ключевое Network слово не задано, 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 для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
AttachDBFileName SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать AttachDBFileName, необходимо также указать имя базы данных с ключевым словом "База данных поставщика". Если база данных уже была присоединена ранее, SQL Server не присоединяет её повторно (он использует присоединённую базу данных как базу данных по умолчанию для подключения).
Authentication 1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryIntegrated: Интегрированная аутентификация с Microsoft Entra ID.

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

  • ActiveDirectoryInteractive: Интерактивная аутентификация с идентификацией Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI: Управляемая аутентификация личности . Для идентификатора, назначаемого пользователем, в качестве идентификатора пользователя следует указать идентификатор объекта пользовательского удостоверения.
  • ActiveDirectoryServicePrincipal: проверка подлинности с помощью учетной записи службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • ActiveDirectoryPassword: [DEPRECATED] Идентификатор пользователя и проверка подлинности паролей с удостоверением Microsoft Entra не рекомендуется. Дополнительные сведения см. в статье Microsoft Entra username and password authentication.
  • SqlPassword: Аутентификация с использованием идентификатора пользователя и пароля.

  • Примечание. Приложения, использующие проверку подлинности SQL Server, должны задать значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Auto Translate SSPROP_INIT_AUTOTRANSLATE Синоним для AutoTranslate.
AutoTranslate SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения yes и no.
ConnectRetryCount SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 не приведет к попытке повторного подключения. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
ConnectRetryInterval SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
Database DBPROP_INIT_CATALOG Имя базы данных.
DataTypeCompatibility SSPROP_INIT_DATATYPECOMPATIBILITY Указывает используемый режим обработки типов данных. Допустимыми значениями являются 0 для типов данных поставщика и 80 для типов данных SQL Server 2000 (8.x).
Encrypt 1 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 использует SPN по умолчанию, созданный поставщиком.
HostNameInCertificate SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. HostNameInCertificate Если ключевое слово не задано, драйвер использует Server значение ключевого слова в URL-адресе подключения в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
Примечание. Это свойство игнорируется, если сертификат сервера является доверенным. Если Encrypt задано значение Strict, сертификат всегда будет проверен.
Language 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 Driver for SQL Server для более быстрого обнаружения и подключения к (в настоящее время) активному серверу. Возможные значения: Yes и No. Значение по умолчанию — No. Например:

MultiSubnetFailover=Yes

Дополнительные сведения о поддержке драйвером OLE DB для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
Net SSPROP_INIT_NETWORKLIBRARY Синоним для Network.
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.
Server DBPROP_INIT_DATASOURCE Имя экземпляра SQL Server. Значение должно быть либо именем сервера в сети, либо IP-адресом, либо именем псевдонима Диспетчера конфигурации SQL Server.

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

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

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

Server=;
Server=.;
Server=(local);
Server=(local);
Server=(localhost);
Server=(localdb)\<instancename>;

Дополнительные сведения о поддержке LocalDB см. в статье OLE DB Driver for SQL Server Support for LocalDB.

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

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

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

Полный синтаксис ключевого Server слова выглядит следующим образом:

[протокол:]Сервер[,порт]

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

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

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

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

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

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

Пробелы игнорируются в начале значения, переданного Server в строки подключения при использовании OLE DB Driver for SQL Server.
ServerCertificate SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. Если сертификат указан, сертификат SQL Server проверяется на точное совпадение с предоставленным сертификатом.
ServerSPN SSPROP_INIT_SERVERSPN SPN сервера. Значение по умолчанию — пустая строка. Пустая строка приводит к тому, что OLE DB Driver for SQL Server использует SPN по умолчанию, созданный поставщиком.
Timeout 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 должны быть указаны.
TrustServerCertificate 1 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:

Ключевое слово Свойство инициализации Описание
Access Token 1 SSPROP_AUTH_ACCESS_TOKEN Токен доступа, используемый для аутентификации в Microsoft Entra ID.

Примечание. Ошибка указывать это ключевое слово вместе с UID, PWD, Trusted_Connection или Authentication в строке подключения или использовать соответствующие свойства/ключевые слова.
Application Name SSPROP_INIT_APPNAME Строка, идентифицирующая приложение.
Application Intent SSPROP_INIT_APPLICATIONINTENT Объявляет тип рабочей нагрузки приложения при соединении с сервером. Возможные значения: ReadOnly и ReadWrite.

Значение по умолчанию — ReadWrite. Дополнительные сведения о поддержке драйвером OLE DB для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
Authentication 1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryIntegrated: Интегрированная аутентификация с Microsoft Entra ID.

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

  • ActiveDirectoryInteractive: Интерактивная аутентификация с идентификацией Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI: Управляемая аутентификация личности . Для идентификатора, назначаемого пользователем, в качестве идентификатора пользователя следует указать идентификатор объекта пользовательского удостоверения.
  • ActiveDirectoryServicePrincipal: проверка подлинности с помощью учетной записи службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • ActiveDirectoryPassword: [DEPRECATED] Идентификатор пользователя и проверка подлинности паролей с удостоверением Microsoft Entra не рекомендуется. Переход на многофакторную аутентификацию (ActiveDirectoryInteractive) для учетных записей пользователей. Дополнительные сведения см. в статье Microsoft Entra username and password authentication.
  • SqlPassword: Аутентификация с использованием идентификатора пользователя и пароля.

  • Примечание. Приложения, использующие проверку подлинности SQL Server, должны задать значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Auto Translate SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения true и false.
Connect Timeout DBPROP_INIT_TIMEOUT Время (в секундах), в течение которого ожидается завершение инициализации источника данных.
Connect Retry Count SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 не приведет к попытке повторного подключения. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
Connect Retry Interval SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
Current Language SSPROPT_INIT_CURRENTLANGUAGE Имя языка SQL Server.
Data Source 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 использует SPN по умолчанию, создаваемый поставщиком.
Host Name In Certificate SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Host Name In Certificate Если ключевое слово не задано, драйвер использует Data Source значение ключевого слова в URL-адресе подключения в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
Примечание. Это свойство игнорируется, если сертификат сервера является доверенным. Если Use Encryption for Data задано значение Strict, сертификат всегда будет проверен.
Initial Catalog DBPROP_INIT_CATALOG Имя базы данных.
Initial File Name SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать AttachDBFileName, необходимо также с помощью ключевого слова DATABASE строки поставщика указать имя базы данных. Если база данных уже была присоединена ранее, SQL Server не присоединяет её повторно (он использует присоединённую базу данных как базу данных по умолчанию для подключения).
Integrated Security 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 Driver for SQL Server для более быстрого обнаружения и подключения к (в настоящее время) активному серверу. Возможные значения: True и False. Значение по умолчанию — False. Например:

MultiSubnetFailover=True

Дополнительные сведения о поддержке драйвером OLE DB для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
Network Address SSPROP_INIT_NETWORKADDRESS Сетевой адрес экземпляра SQL Server в организации.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого Address слова в этой статье.
Network Library SSPROP_INIT_NETWORKLIBRARY Сетевая библиотека, используемая для установления подключения к экземпляру SQL Server в организации.
Packet Size SSPROP_INIT_PACKETSIZE Размер пакета потока табличных данных (TDS). Значение по умолчанию — 0 (фактическое значение определяется сервером).
Password DBPROP_AUTH_PASSWORD Пароль для входа SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Принимает в качестве значений строки true и false. Если используется значение false, объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности.
Provider В случае OLE DB Driver for SQL Server значение — MSOLEDBSQL19 или MSOLEDBSQL.
Server Certificate SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. Если сертификат указан, сертификат SQL Server проверяется на точное совпадение с предоставленным сертификатом.
Server SPN SSPROP_INIT_SERVERSPN SPN сервера. Значение по умолчанию — пустая строка. Пустая строка приводит к тому, что OLE DB Driver for SQL Server использует SPN по умолчанию, созданный поставщиком.
TransparentNetworkIPResolution SSPROP_INIT_TNIR Влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает и имеется несколько IP-адресов, связанных с именем этого узла. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Возможные значения: True и False. Значение по умолчанию — True. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети.
Trust Server Certificate 1 SSPROP_INIT_TRUST_SERVER_CERTIFICATE Принимает в качестве значений строки true и false. По умолчанию имеет значение false, которое указывает, что сертификат сервера будет проверяться.
Use Encryption for Data 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 для извлечения метаданных вместо этого.
User ID DBPROP_AUTH_USERID Имя входа SQL Server.
Workstation ID SSPROP_INIT_WSID Идентификатор рабочей станции.

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

Примечание.

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

Ключевые слова строки подключения ActiveX Data Objects (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:

Ключевое слово Свойство инициализации Описание
Access Token 1 SSPROP_AUTH_ACCESS_TOKEN Токен доступа, используемый для аутентификации в Microsoft Entra ID.

Примечание. Ошибка указывать это ключевое слово вместе с UID, PWD, Trusted_Connection или Authentication в строке подключения или использовать соответствующие свойства/ключевые слова.
Application Intent SSPROP_INIT_APPLICATIONINTENT Объявляет тип рабочей нагрузки приложения при соединении с сервером. Возможные значения: ReadOnly и ReadWrite.

Значение по умолчанию — ReadWrite. Дополнительные сведения о поддержке драйвером OLE DB для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
Application Name SSPROP_INIT_APPNAME Строка, идентифицирующая приложение.
Authentication 1 SSPROP_AUTH_MODE Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
  • (not set): режим проверки подлинности, определенный другими ключевыми словами.
  • ActiveDirectoryIntegrated: Интегрированная аутентификация с Microsoft Entra ID.

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

  • ActiveDirectoryInteractive: Интерактивная аутентификация с идентификацией Microsoft Entra. Этот метод поддерживает многофакторную проверку подлинности Microsoft Entra.
  • ActiveDirectoryMSI: Управляемая аутентификация личности . Для идентификатора, назначаемого пользователем, в качестве идентификатора пользователя следует указать идентификатор объекта пользовательского удостоверения.
  • ActiveDirectoryServicePrincipal: проверка подлинности с помощью учетной записи службы Microsoft Entra. В качестве идентификатора пользователя нужно указать идентификатор приложения (клиента). В качестве пароля нужно указать секрет приложения (клиента).
  • ActiveDirectoryPassword: [DEPRECATED] Идентификатор пользователя и проверка подлинности паролей с удостоверением Microsoft Entra не рекомендуется. Переход на многофакторную аутентификацию (ActiveDirectoryInteractive) для учетных записей пользователей. Дополнительные сведения см. в статье Microsoft Entra username and password authentication.
  • SqlPassword: Аутентификация с использованием идентификатора пользователя и пароля.

  • Примечание. Приложения, использующие проверку подлинности SQL Server, должны задать значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов.
Auto Translate SSPROP_INIT_AUTOTRANSLATE Настраивает перевод символов OEM/ANSI. Распознаются значения true и false.
Connect Timeout DBPROP_INIT_TIMEOUT Время (в секундах), в течение которого ожидается завершение инициализации источника данных.
Connect Retry Count SSPROP_INIT_CONNECT_RETRY_COUNT Управляет количеством попыток повторного подключения при потере соединения. Допустимы значения от 0 до 255. Значение по умолчанию — 1. Значение 0 не приведет к попытке повторного подключения. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
Connect Retry Interval SSPROP_INIT_CONNECT_RETRY_INTERVAL Указывает количество секунд между попытками повторного подключения при потере соединения. Допустимы значения от 1 до 60. Значение по умолчанию — 10. Дополнительные сведения см. в разделе "Устойчивость подключения к простою" в драйвере OLE DB.
Current Language SSPROPT_INIT_CURRENTLANGUAGE Имя языка SQL Server.
Data Source 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 использует SPN по умолчанию, созданный поставщиком.
Host Name In Certificate SSPROP_INIT_HOST_NAME_CERTIFICATE Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Host Name In Certificate Если ключевое слово не задано, драйвер использует Data Source значение ключевого слова в URL-адресе подключения в качестве имени узла для проверки TLS/SSL-сертификата SQL Server.
Примечание. Это свойство игнорируется, если сертификат сервера является доверенным. Если Use Encryption for Data задано значение Strict, сертификат всегда будет проверен.
Initial Catalog DBPROP_INIT_CATALOG Имя базы данных.
Initial File Name SSPROP_INIT_FILENAME Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать AttachDBFileName, необходимо также с помощью ключевого слова DATABASE строки поставщика указать имя базы данных. Если база данных уже была присоединена ранее, SQL Server не присоединяет её повторно (он использует присоединённую базу данных как базу данных по умолчанию для подключения).
Integrated Security 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 Driver for SQL Server для более быстрого обнаружения и подключения к (в настоящее время) активному серверу. Возможные значения: True и False. Значение по умолчанию — False. Например:

MultiSubnetFailover=True

Дополнительные сведения о поддержке драйвером OLE DB для SQL Server групп доступности Always On см. в разделе Поддержка драйвера OLE DB для SQL Server для высокой доступности и аварийного восстановления.
Network Address SSPROP_INIT_NETWORKADDRESS Сетевой адрес экземпляра SQL Server в организации.

Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого Address слова в этой статье.
Network Library SSPROP_INIT_NETWORKLIBRARY Сетевая библиотека, используемая для установления подключения к экземпляру SQL Server в организации.
Packet Size SSPROP_INIT_PACKETSIZE Размер пакета потока табличных данных (TDS). Значение по умолчанию — 0 (фактическое значение определяется сервером).
Password DBPROP_AUTH_PASSWORD Пароль для входа SQL Server.
Persist Security Info DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO Принимает в качестве значений строки true и false. Если используется значение false, объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности.
Provider В случае OLE DB Driver for SQL Server значение — MSOLEDBSQL19 или MSOLEDBSQL.
Server Certificate SSPROP_INIT_SERVER_CERTIFICATE Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. Если сертификат указан, сертификат SQL Server проверяется на точное совпадение с предоставленным сертификатом.
Server SPN SSPROP_INIT_SERVERSPN SPN сервера. Значение по умолчанию — пустая строка. Пустая строка приводит к тому, что OLE DB Driver for SQL Server использует SPN по умолчанию, созданный поставщиком.
TransparentNetworkIPResolution SSPROP_INIT_TNIR Влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает и имеется несколько IP-адресов, связанных с именем этого узла. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Возможные значения: True и False. Значение по умолчанию — True. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети.
Trust Server Certificate 1 SSPROP_INIT_TRUST_SERVER_CERTIFICATE Принимает в качестве значений строки true и false. По умолчанию имеет значение false, которое указывает, что сертификат сервера будет проверяться.
Use Encryption for Data 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 для извлечения метаданных вместо этого.
User ID DBPROP_AUTH_USERID Имя входа SQL Server.
Workstation ID SSPROP_INIT_WSID Идентификатор рабочей станции.

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

Примечание.

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