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


sp_addserver (Transact-SQL)

Определяет имя локального экземпляра SQL Server. С помощью этой хранимой процедуры также можно определять удаленный сервер.

ПримечаниеПримечание

Возможность определения удаленного сервера будет удалена в следующей версии SQL Server. Вместо этого для определения связанных серверов используйте хранимую процедуру sp_addlinkedserver.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

sp_addserver [ @server = ] 'server' 
     [ , [ @local= ] 'local' ] 
     [ , [ @duplicate_ok = ] 'duplicate_OK' ]

Аргументы

  • [ @server = ] 'server'
    Имя сервера. Имена серверов должны быть уникальными и соответствовать правилам именования Microsoft Windows, за исключением того, что пробелы не допускаются. Аргумент server имеет тип sysname и не имеет значения по умолчанию.

    Если на одном компьютере установлено несколько экземпляров SQL Server, то каждый экземпляр работает, как на отдельном сервере. Именованный экземпляр server указывается в виде ИмяСервера\ИмяЭкземпляра.

  • [ @local = ] 'LOCAL'
    Указывает вид добавляемого сервера: локальный или удаленный. Аргумент @local имеет тип varchar(10) и значение по умолчанию NULL. При указании значения LOCAL для аргумента @local аргументу @server присваивается значение имени локального сервера, а функция @@SERVERNAME возвращает при этом значение аргумента server.

    Программа настройки SQL Server во время установки присваивает этой переменной в качестве значения имя компьютера. Рекомендуется не изменять это имя. По умолчанию при подключении пользователей к экземпляру SQL Server используется имя компьютера, и никакая дополнительная настройка не требуется.

    Локальное переопределение вступает в силу только после перезагрузки сервера. На каждом сервере может быть определен только один локальный сервер.

  • [ @duplicate_ok = ] 'duplicate_OK'
    Указывает, допустимо ли совпадение имен серверов. Аргумент @duplicate_OK имеет тип varchar(13) и значение по умолчанию NULL. Аргумент @duplicate_OK может принимать значения duplicate_OK или NULL. Если указано значение аргумента duplicate_OK, а имя добавляемого сервера уже существует, то ошибки не возникает. Если именованные параметры не используются, то аргумент @local обязателен.

Значения кодов возврата

0 (успешное завершение) или 1 (ошибка)

Замечания

Для выполнения хранимой процедуры на удаленном сервере (удаленный вызов процедур), на котором запущена более ранняя версия SQL Server, добавьте удаленный сервер с помощью процедуры sp_addserver. Чтобы выполнить хранимую процедуру или любой распространенный запрос на удаленном сервере, на котором запущена версия SQL Server 7.0 или более поздняя, следует воспользоваться процедурой sp_addlinkedserver для добавления сервера.

Задать или очистить параметры сервера можно с помощью процедуры sp_serveroption.

Процедуру sp_addserver нельзя использовать внутри пользовательской транзакции.

Разрешения

Требует членства в предопределенной роли сервера setupadmin.

Примеры

Следующий пример создает запись для удаленного сервера ACCOUNTS на локальном сервере.

sp_addserver 'ACCOUNTS';