Использование ключевых слов строки соединения с собственным клиентом SQL Server
Некоторые API собственного клиента SQL Server используют строки соединения, чтобы указать свойства соединения. Строки соединения являются списками ключевых слов и связанных значений, причем каждое ключевое слово определяет определенный атрибут соединения.
Примечание |
---|
Собственный клиент SQL Server поддерживает неоднозначность строк соединения для обеспечения обратной совместимости (например, некоторые ключевые слова могут быть указаны несколько раз, и конфликты ключевых слов могут разрешаться на основании их положения или приоритета). В следующих версиях собственного клиента SQL Server неоднозначность в строках соединения может стать недопустимой. При изменении приложения для работы с собственным клиентом SQL Server необходимо предусмотреть устранение любых зависимостей от неоднозначности строки соединения. |
В следующих разделах описываются ключевые слова, которые могут использоваться с поставщиком OLE DB собственного клиента SQL Server, драйвером ODBC собственного клиента SQL Server и объектами данных ActiveX (ADO) при использовании собственного клиента SQL Server как поставщика данных.
Ключевые слова строки соединения поставщика OLE DB
Приложения OLE DB могут инициализировать объекты источника данных двумя способами:
IDBInitialize::Initialize
IDataInitialize::GetDataSource
В первом случае строка поставщика может использоваться для инициализации свойств соединения посредством установки свойства DBPROP_INIT_PROVIDERSTRING в наборе свойств DBPROPSET_DBINIT. Во втором случае строка инициализации может быть передана методу IDataInitialize::GetDataSource для инициализации свойств соединения. При использовании каждого из этих методов инициализируются одни и те же свойства соединения OLE DB, однако, для этого применяются разные наборы ключевых слов. Набор ключевых слов, используемых методом IDataInitialize::GetDataSource, представляет собой как минимум описание свойств, входящих в группу свойств инициализации.
Логические свойства, установленные в строках поставщика через значения 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 будет передано в строку поставщика. |
Если указать несколько экземпляров одного свойства поставщика, то будет использоваться первое значение первого свойства.
Строки соединения, используемые в приложениях 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 в организации. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Address далее в этом разделе. |
APP |
SSPROP_INIT_APPNAME |
Строка, идентифицирующая приложение. |
AttachDBFileName |
SSPROP_INIT_FILENAME |
Имя первичного файла присоединяемой базы данных (включает полный путь). Чтобы использовать ключевое слово AttachDBFileName, также необходимо указать имя базы данных с ключевым словом Database строки поставщика. Если база данных уже присоединена, SQL Server не присоединяет ее повторно, а использует для соединения присоединенную базу данных по умолчанию. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Синоним для «AutoTranslate». |
AutoTranslate |
SSPROP_INIT_AUTOTRANSLATE |
Настраивает перевод символов OEM/ANSI. Распознаются значения «yes» и «no». |
Database |
DBPROP_INIT_CATALOG |
Имя базы данных. |
DataTypeCompatibility |
SSPROP_INIT_DATATYPECOMPATIBILITY |
Указывает используемый режим обработки типов данных. Распознаются значения «0» (для типов данных поставщика) и «80» (для типов данных SQL Server 2000). |
Encrypt |
SSPROP_INIT_ENCRYPT |
Указывает, необходимо ли шифрование данных перед их отправкой по сети. Допустимы значения «yes» и «no». Значение по умолчанию — «no». |
FailoverPartner |
SSPROP_INIT_FAILOVERPARTNER |
Имя отказоустойчивого сервера, используемого для зеркального отображения базы данных. |
FailoverPartnerSPN |
SSPROP_INIT_FAILOVERPARTNERSPN |
Имя участника-службы для резервного участника. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Язык SQL Server. |
MarsConn |
SSPROP_INIT_MARSCONNECTION |
Включает или отключает режим MARS для соединения для сервера SQL Server 2005 или более поздней версии. Допустимы значения «yes» и «no». Значение по умолчанию — «no». |
Net |
SSPROP_INIT_NETWORKLIBRARY |
Синоним для «Network». |
Network |
SSPROP_INIT_NETWORKLIBRARY |
Сетевая библиотека, используемая для установления соединения с экземпляром SQL Server в организации. |
Network Library |
SSPROP_INIT_NETWORKLIBRARY |
Синоним для «Network». |
PacketSize |
SSPROP_INIT_PACKETSIZE |
Размер сетевого пакета. Значение по умолчанию равно 0, что означает, что сервер настроит размер пакета исходя из значения параметра sp_configure 'network packet size'. |
PersistSensitive |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO |
Принимает в качестве значений строки «yes» и «no». Если используется значение «no», объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности |
PWD |
DBPROP_AUTH_PASSWORD |
Пароль имени входа SQL Server. |
Server |
DBPROP_INIT_DATASOURCE |
Имя экземпляра SQL Server в организации. Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Server в этом разделе. |
ServerSPN |
SSPROP_INIT_SERVERSPN |
Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
Timeout |
DBPROP_INIT_TIMEOUT |
Время (в секундах), в течение которого ожидается завершение инициализации источника данных. |
Trusted_Connection |
DBPROP_AUTH_INTEGRATED |
Значение «yes» предписывает поставщику OLE DB собственного клиента SQL Server использовать режим проверки подлинности Windows для проверки имени входа. В противном случае для проверки имени входа поставщик OLE DB собственного клиента SQL Server должен использовать имя пользователя и пароль SQL Server, а также необходимо указать ключевые слова UID и PWD. |
TrustServerCertificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Принимает в качестве значений строки «yes» и «no». По умолчанию имеет значение «no», которое указывает, что сертификат сервера будет проверяться. |
UID |
DBPROP_AUTH_USERID |
Имя входа SQL Server. |
UseProcForPrepare |
SSPROP_INIT_USEPROCFORPREP |
Это ключевое слово является устаревшим, и его значение не обрабатывается поставщиком OLE DB собственного клиента SQL Server. |
WSID |
SSPROP_INIT_WSID |
Идентификатор рабочей станции. |
Строки соединения, используемые приложениями 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 применяются одиночные (') или двойные (") кавычки. Заключать в кавычки можно только строковые свойства. Заключение в кавычки целочисленного или перечисляемого свойства приведет к ошибке.
Значения атрибутов можно при желании заключать в одинарные или двойные кавычки, а фактически это даже рекомендуется. Это позволяет избежать проблем, если значения содержат символы, отличные от буквенно-цифровых. Используемый символ кавычек может также появиться в значении при условии его удвоения.
Пробел после знака равенства в строке соединения будет считаться литералом, даже если значение заключено в кавычки.
Если строка соединения содержит несколько следующих свойств, будет использоваться значение последнего свойства.
В следующей таблице рассматриваются ключевые слова, которые можно использовать с IDataInitialize::GetDataSource.
Ключевое слово |
Свойство инициализации |
Описание |
---|---|---|
Application Name |
SSPROP_INIT_APPNAME |
Строка, идентифицирующая приложение. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Синоним для «AutoTranslate». |
AutoTranslate |
SSPROP_INIT_AUTOTRANSLATE |
Настраивает перевод символов OEM/ANSI. Распознаются значения «true» и «false». |
Connect Timeout |
DBPROP_INIT_TIMEOUT |
Время (в секундах), в течение которого ожидается завершение инициализации источника данных. |
Current Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Язык SQL Server. |
Data Source |
DBPROP_INIT_DATASOURCE |
Имя экземпляра SQL Server в организации. Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Server далее в этом разделе. |
DataTypeCompatibility |
SSPROP_INIT_DATATYPECOMPATIBILITY |
Задает используемый режим обработки типов данных. Распознаются значения «0» (для типов данных поставщика) и «80» (для типов данных SQL Server 2000). |
Failover Partner |
SSPROP_INIT_FAILOVERPARTNER |
Имя отказоустойчивого сервера, используемого для зеркального отображения базы данных. |
Failover Partner SPN |
SSPROP_INIT_FAILOVERPARTNERSPN |
Имя участника-службы для резервного участника. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
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 или SQL Server 2008. Распознаются значения «true» и «false». Значение по умолчанию — «false». |
Network Address |
SSPROP_INIT_NETWORKADDRESS |
Сетевой адрес экземпляра SQL Server в организации. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Address далее в этом разделе. |
Network Library |
SSPROP_INIT_NETWORKLIBRARY |
Сетевая библиотека, используемая для установления соединения с экземпляром SQL Server в организации. |
Packet Size |
SSPROP_INIT_PACKETSIZE |
Размер сетевого пакета. Значение по умолчанию равно 0, что означает, что сервер настроит размер пакета исходя из значения параметра sp_configure 'network packet size'. |
Password |
DBPROP_AUTH_PASSWORD |
Пароль имени входа SQL Server. |
Persist Security Info |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO |
Принимает в качестве значений строки «true» и «false». Если используется значение «false», объекту источника данных запрещено хранить конфиденциальные данные проверки подлинности. |
Provider |
|
Для собственного клиента SQL Server необходимо указывать значение «SQLNCLI10». |
Server SPN |
SSPROP_INIT_SERVERSPN |
Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
Trust Server Certificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Принимает в качестве значений строки «true» и «false». По умолчанию имеет значение «false», которое указывает, что сертификат сервера будет проверяться. |
Use Encryption for Data |
SSPROP_INIT_ENCRYPT |
Указывает, необходимо ли шифровать данные перед их отправкой по сети. Возможными значениями являются «true» и «false». Значение по умолчанию — «false». |
User ID |
DBPROP_AUTH_USERID |
Имя входа SQL Server. |
Workstation ID |
SSPROP_INIT_WSID |
Идентификатор рабочей станции. |
Примечание. В строке соединения свойство «Old Password» устанавливает значение свойства SSPROP_AUTH_OLD_PASSWORD, являющееся текущим паролем (возможно с истекшим сроком действия), не доступным через свойство строки поставщика.
Ключевые слова в строке соединения драйвера ODBC
Приложения ODBC используют строки соединения как параметры функций SQLDriverConnect и SQLBrowseConnect.
Строки соединения, используемые ODBC, имеют следующий синтаксис:
connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=[{]attribute-value[}]
attribute-value ::= character-string
attribute-keyword ::= identifier
Значения атрибутов можно (и рекомендуется) дополнительно заключить в фигурные скобки. Это позволяет избежать проблем, если значения атрибутов содержат символы, отличные от буквенно-цифровых. Предполагается, что первая закрывающая фигурная скобка в значении служит признаком конца значения, поэтому само значение не может содержать символы закрывающей фигурной скобки.
В следующей таблице описываются ключевые слова, которые можно использовать со строкой соединения ODBC.
Ключевое слово |
Описание |
---|---|
Addr |
Синоним для «Address». |
Address |
Сетевой адрес сервера, на котором работает экземпляр SQL Server. Сетевым именем сервера обычно является Address, но возможны и другие имена, например имя канала, IP-адрес, порт TCP/IP и адрес сокета. Если указывается IP-адрес, убедитесь, что в диспетчере конфигурации SQL Server включен протокол TCP/IP или протокол именованных каналов. Значение Address имеет приоритет над значением, передаваемым в Server в строках соединения ODBC, если используется собственный клиент SQL Server. Также следует отметить, что строка Address=; соединяется с сервером, указанным в ключевом слове Server, а при использовании ключевых слов Address= ;, Address=.;, Address=localhost; и Address=(local); устанавливается соединение с локальным сервером. Далее представлен полный синтаксис ключевого слова Address: [protocol:]Address[,port |\pipe\pipename] Ключевое слово protocol может иметь значение tcp (TCP/IP), lpc (общая память) или np (именованные каналы). Дополнительные сведения о протоколах см. в разделе Выбор сетевого протокола. Если не указано ни ключевое слово protocol, ни ключевое слово Network, собственный клиент SQL Server будет использовать порядок протоколов, заданный в диспетчере конфигурации SQL Server. port — это порт указанного сервера, к которому выполняется подключение. По умолчанию SQL Server использует порт 1433. Дополнительные сведения о протоколах см. в разделе Выбор сетевого протокола. |
AnsiNPW |
Если задано значение «yes», то в драйвере используются определяемые стандартами ANSI правила обработки сравнений со значением NULL, дополнения символьных данных, формирования предупреждений и выполнения операция объединений со значением NULL. При использовании значения «no» определенные стандартом ANSI действия не используются. Дополнительные сведения о влиянии значения ANSI NPW см. в разделе Действие параметров ISO. |
APP |
Имя приложения, вызывающего функцию SQLDriverConnect (необязательно). Если это значение указано, оно хранится в столбце program_name в таблице master.dbo.sysprocesses и возвращается функциями sp_who и APP_NAME. |
AttachDBFileName |
Имя первичного файла присоединяемой базы данных. Необходимо указать полный путь и экранировать любые символы \ при использовании символьной строковой переменной C: AttachDBFileName=c:\\MyFolder\\MyDB.mdf Эта база данных присоединяется и становится для соединения базой данных по умолчанию. Чтобы использовать ключевое слово AttachDBFileName, также необходимо указать имя базы данных или в параметре DATABASE SQLDriverConnect, или в атрибуте соединения SQL_COPT_CURRENT_CATALOG. Если база данных уже присоединена, SQL Server не присоединяет ее повторно, а использует для соединения присоединенную базу данных по умолчанию. |
AutoTranslate |
Если имеет значение «yes», строки символов ANSI, которыми обмениваются клиент и сервер, переводятся с использованием Юникода, чтобы минимизировать проблемы сопоставления символов национальных алфавитов кодовых страниц клиента и сервера. Данные клиента типа SQL_C_CHAR, отправленные в переменную SQL Server типа char, varchar или text, параметр или столбец, преобразуются в Юникод с помощью кодовой страницы ANSI клиента (ACP), а затем преобразуются из Юникода с помощью ACP сервера. Данные SQL Server типа char, varchar и text, передаваемые в клиентскую переменную SQL_C_CHAR, преобразуются из символьного типа в Юникод с помощью кодовой страницы ANSI сервера, а затем преобразуются из Юникода в символьный тип с помощью кодовой страницы ANSI клиента. Эти преобразования выполняются на клиенте драйвером ODBC собственного клиента SQL Server. Для этого необходимо, чтобы на сервере была доступна такая же кодовая страница ANSI, какая используется на клиенте. Следующие параметры не влияют на преобразования, выполняемые для этих передач.
Если имеет значение «no», перевод символов не выполняется. Драйвер ODBC собственного клиента SQL Server не преобразует данные клиента типа SQL_C_CHAR в формате ANSI, отправляемые в переменные типа char, varchar или text, параметры или столбцы на сервере. Также не выполняется перевод данных типа char, varchar или text, отправляемых с сервера в переменные клиента типа SQL_C_CHAR. Если клиент и SQL Server используют разные кодовые страницы ANSI, символы национального алфавита могут быть переведены неправильно. |
Database |
Имя базы данных SQL Server, используемой для соединения по умолчанию. Если ключевое слово Database не указано, используется база данных, определенная по умолчанию для имени входа. База данных по умолчанию из источника данных ODBC переопределяет базу данных по умолчанию, определенную для имени входа. База данных должна существовать, если не указан параметр AttachDBFileName. Если также указано ключевое слово AttachDBFileName, выполняется присоединение первичного файла, на который оно указывает, после чего присваивается имя базы данных, указанное ключевым словом Database. |
Driver |
Имя драйвера, возвращаемое функцией SQLDrivers. Значение ключевого слова для драйвера ODBC собственного клиента SQL Server – «{SQL Server Native Client 10.0}». Ключевое слово Server требуется, если указано ключевое слово Driver, и ключевое слово DriverCompletion имеет значение SQL_DRIVER_NOPROMPT. Дополнительные сведения об именах драйверов см. в разделе Использование файлов заголовков и библиотек собственного клиента SQL Server. |
DSN |
Имя существующего пользователя ODBC или системного источника данных. Это ключевое слово переопределяет все значения, указанные в ключевых словах Server, Network и Address. |
Encrypt |
Указывает, необходимо ли шифрование данных перед их отправкой по сети. Допустимы значения «yes» и «no». Значение по умолчанию — «no». |
Fallback |
Это ключевое слово является устаревшим, и его значение не учитывается драйвером ODBC собственного клиента SQL Server. |
Failover_Partner |
Имя резервного сервера-участника, которое будет использоваться, если невозможно установить соединение с сервером-источником. |
FailoverPartnerSPN |
Имя участника-службы для резервного участника. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное драйвером. |
FileDSN |
Имя существующего файлового источника данных ODBC. |
Language |
Имя языка SQL Server (необязательно). SQL Server может хранить сообщения для нескольких языков в системной таблице sysmessages. При соединении с SQL Server с несколькими языками ключевое слово Language указывает, какой набор сообщений будет использован для соединения. |
MARS_Connection |
Включает или отключает режим MARS для соединения для сервера SQL Server 2005 или SQL Server 2008. Распознаются значения «yes» и «no». Значение по умолчанию — «no». |
Net |
Синоним для «Network». |
Network |
Допустимые значения: dbnmpntw (именованные каналы) и dbmssocn (TCP/IP). Дополнительные сведения о сетевых протоколах см. в разделе Выбор сетевого протокола. Одновременное указание значения для ключевого слова Network и префикса протокола в ключевом слове Server будет ошибкой. |
PWD |
Пароль для учетной записи входа SQL Server указан в параметре UID. Нет необходимости указывать PWD, если имя входа имеет пароль NULL, или при использовании проверки подлинности Windows (Trusted_Connection = yes). |
QueryLog_On |
Если имеет значение «yes», для соединения включается регистрация данных длительных запросов. Если имеет значение «no», данные длительных запросов не регистрируются. |
QueryLogFile |
Полный путь и имя файла, используемого для регистрации данных длительных запросов. |
QueryLogTime |
Строка цифровых символов, указывающая порог (в миллисекундах) для регистрации длительных запросов. Любой запрос, ответ на который не поступает за указанное время, записывается в файл регистрации длительных запросов. |
QuotedId |
Если имеет значение «yes», параметр QUOTED_IDENTIFIERS при соединении устанавливается в значение ON. SQL Server использует правила ISO в отношении использования кавычек в инструкциях SQL. Если имеет значение «no», параметр QUOTED_IDENTIFIERS для соединения устанавливается в значение OFF. SQL Server использует правила прежних версий Transact-SQL в отношении использования кавычек в инструкциях SQL. Дополнительные сведения см. в разделе Действие параметров ISO. |
Regional |
Если имеет значение «yes», драйвер ODBC собственного клиента SQL Server использует настройки клиента при преобразовании данных валюты, даты и времени в символьные данные. Преобразование является односторонним, то есть драйвер не распознает строки даты и значения валюты, отличные от стандарта ODBC, например, параметры инструкций INSERT или UPDATE. Если имеет значение «no», драйвер использует стандартные строки ODBC для представления данных валюты, даты и времени, преобразуемых в символьные данные. |
SaveFile |
Имя исходного файла данных ODBC, в который сохраняются атрибуты текущего соединения, если соединение успешно установлено. |
Server |
Имя экземпляра SQL Server. Значением должно быть имя сервера в сети, IP-адрес или имя псевдонима диспетчера конфигурации SQL Server. Ключевое слово Address переопределяет ключевое слово Server. Чтобы подключиться к экземпляру по умолчанию на локальном сервере, можно указать одно из следующих ключевых слов:
Чтобы указать именованный экземпляр SQL Server, добавьте \InstanceName. Если сервер не указан, устанавливается соединение с экземпляром по умолчанию на локальном компьютере. Если указывается IP-адрес, убедитесь, что в диспетчере конфигурации SQL Server включен протокол TCP/IP или протокол именованных каналов. Далее представлен полный синтаксис ключевого слова Server: Server=[protocol:]Server[,port] Ключевое слово protocol может иметь значение tcp (TCP/IP), lpc (общая память) или np (именованные каналы). Дополнительные сведения о протоколах см. в разделе Выбор сетевого протокола. Ниже приводится пример указания именованного канала:
Эта строка указывает протокол именованных каналов, именованный канал на локальном компьютере (\\.\pipe), имя экземпляра SQL Server (MSSQL$MYINST01) и имя по умолчанию для именованного канала (sql/query). Если не указано ни ключевое слово protocol, ни ключевое слово Network, собственный клиент SQL Server будет использовать порядок протоколов, заданный в диспетчере конфигурации SQL Server. port — это порт указанного сервера, к которому выполняется подключение. По умолчанию SQL Server использует порт 1433. Пробелы в начале значения, передаваемого в аргументе Server строки соединения ODBC, не учитываются, когда используется собственный клиент SQL Server. |
ServerSPN |
Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное драйвером. |
StatsLog_On |
Если имеет значение «yes», включается сбор данных производительности драйвера ODBC собственного клиента SQL Server. Если имеет значение «no», данные производительности драйвера ODBC собственного клиента SQL Server для соединения недоступны. |
StatsLogFile |
Полный путь и имя файла для записи статистики производительности драйвера ODBC собственного клиента SQL Server. |
Trusted_Connection |
Значение «yes» предписывает драйверу ODBC собственного клиента SQL Server использовать режим проверки подлинности Windows для проверки имени входа. В противном случае для проверки имени входа драйвер ODBC собственного клиента SQL Server должен использовать имя пользователя и пароль SQL Server, а также необходимо указать ключевые слова UID и PWD. |
TrustServerCertificate |
Если используется с ключевым словом Encrypt, включает шифрование с использованием самозаверяющего сертификата сервера. |
UID |
Допустимая учетная запись входа SQL Server. Ключевое слово UID не нужно указывать при использовании проверки подлинности Windows. |
UseProcForPrepare |
Это ключевое слово является устаревшим, и его значение не учитывается драйвером ODBC собственного клиента SQL Server. |
WSID |
Идентификатор рабочей станции. Обычно это сетевое имя компьютера, на котором находится приложение (необязательно). Если это значение указано, хранится в системной таблице master.dbo.sysprocesses в столбце hostname и возвращается функциями sp_who и HOST_NAME. |
Примечание |
---|
Региональные параметры преобразований применяются к типам данных валюты, чисел и даты-времени. Параметры преобразования применяются только при выходных преобразованиях и видны только тогда, когда значения валюты, цифровые данные и данные даты-времени преобразуются в строки символов. |
Драйвер ODBC для собственного клиента SQL Server использует настройки языкового стандарта текущего пользователя, установленные в реестре. Драйвер не учитывает языковой стандарт, установленный в текущем потоке, если приложение установило его после соединения, например, вызовом функции SetThreadLocale.
Изменение режима работы источника данных с региональными параметрами может привести к ошибке приложения. Изменение этого значения может отрицательно повлиять на работу приложения, анализирующего строки даты и предполагающего, что строки даты будут выводиться в виде, определенном ODBC.
Ключевые слова строки соединения объектов данных 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.
Ключевое слово |
Свойство инициализации |
Описание |
---|---|---|
Application Name |
SSPROP_INIT_APPNAME |
Строка, идентифицирующая приложение. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Синоним для «AutoTranslate». |
AutoTranslate |
SSPROP_INIT_AUTOTRANSLATE |
Настраивает перевод символов OEM/ANSI. Распознаются значения «true» и «false». |
Connect Timeout |
DBPROP_INIT_TIMEOUT |
Время (в секундах), в течение которого ожидается завершение инициализации источника данных. |
Current Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Язык SQL Server. |
Data Source |
DBPROP_INIT_DATASOURCE |
Имя экземпляра SQL Server в организации. Если имя не задано, то производится соединение с экземпляром по умолчанию на локальном компьютере. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Server в этом разделе. |
DataTypeCompatibility |
SSPROP_INIT_DATATYPECOMPATIBILITY |
Задает используемый режим обработки типов данных. Распознаются значения «0» (для типов данных поставщика) и «80» (для типов данных SQL Server 2000). |
Failover Partner |
SSPROP_INIT_FAILOVERPARTNER |
Имя отказоустойчивого сервера, используемого для зеркального отображения базы данных. |
Failover Partner SPN |
SSPROP_INIT_FAILOVERPARTNERSPN |
Имя участника-службы для резервного участника. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
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 или более поздней версии. Распознаются значения «true» и «false». По умолчанию используется значение «false». |
Network Address |
SSPROP_INIT_NETWORKADDRESS |
Сетевой адрес экземпляра SQL Server в организации. Дополнительные сведения о допустимом синтаксисе адресов см. в описании ключевого слова ODBC Address в этом разделе. |
Network Library |
SSPROP_INIT_NETWORKLIBRARY |
Сетевая библиотека, используемая для установления соединения с экземпляром SQL Server в организации. |
Packet Size |
SSPROP_INIT_PACKETSIZE |
Размер сетевого пакета. Значение по умолчанию равно 0, что означает, что сервер настроит размер пакета исходя из значения параметра sp_configure 'network packet size'. |
Password |
DBPROP_AUTH_PASSWORD |
Пароль имени входа SQL Server. |
Persist Security Info |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO |
Принимает в качестве значений строки «true» и «false». Если указано значение «false», объекту источника данных не разрешается сохранять конфиденциальные сведения проверки подлинности. |
Provider |
|
Для собственного клиента SQL Server необходимо указывать значение «SQLNCLI10». |
Server SPN |
SSPROP_INIT_SERVERSPN |
Имя участника-службы для сервера. Значение по умолчанию — пустая строка. Если указана пустая строка, собственный клиент SQL Server использует имя участника-службы по умолчанию, сформированное поставщиком. |
Trust Server Certificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Принимает в качестве значений строки «true» и «false». По умолчанию имеет значение «false», которое указывает, что сертификат сервера будет проверяться. |
Use Encryption for Data |
SSPROP_INIT_ENCRYPT |
Указывает, необходимо ли шифровать данные перед их отправкой по сети. Возможными значениями являются «true» и «false». Значение по умолчанию — «false». |
User ID |
DBPROP_AUTH_USERID |
Имя входа SQL Server. |
Workstation ID |
SSPROP_INIT_WSID |
Идентификатор рабочей станции. |
Примечание. В строке соединения свойство «Old Password» устанавливает значение SSPROP_AUTH_OLD_PASSWORD, которое является текущим паролем (возможно с истекшим сроком действия) и недоступно через свойство строки поставщика.
Журнал изменений
Обновленное содержимое |
---|
Обновлено описание для SSPROP_INIT_PACKETSIZE. |
См. также