Condividi tramite


sp_setnetname (Transact-SQL)

Si applica a: SQL Server

Imposta i nomi di rete in sui sys.servers nomi dei computer di rete effettivi per le istanze remote di SQL Server. Questa procedura può essere usata per abilitare l'esecuzione di chiamate di stored procedure remote ai computer con nomi di rete contenenti identificatori di SQL Server non validi.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sp_setnetname
    [ @server = ] N'server'
    , [ @netname = ] N'netname'
[ ; ]

Argomenti

[ @server = ] N'server'

Nome del server remoto a cui si fa riferimento nella sintassi di chiamata di stored procedure remota codificata dall'utente. @server è sysname, senza impostazione predefinita. Per utilizzare questa @server, è necessario che esista esattamente una riga in sys.servers .

[ @netname = ] N'netname'

Nome di rete del computer in cui vengono effettuate chiamate di stored procedure remote. @netname è sysname, senza impostazione predefinita.

Questo nome deve corrispondere al nome del computer Windows e il nome può includere caratteri non consentiti negli identificatori di SQL Server.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Set di risultati

Nessuno.

Osservazioni:

Alcune chiamate di stored procedure remote ai computer Windows possono riscontrare problemi se il nome del computer contiene identificatori non validi.

Poiché i server collegati e i server remoti si trovano nello stesso spazio dei nomi, non possono avere lo stesso nome. Tuttavia, è possibile definire sia un server collegato che un server remoto rispetto a un server specificato assegnando nomi diversi e usando sp_setnetname per impostare il nome di rete di uno di essi sul nome di rete del server sottostante.

In questo esempio Si supponga sqlserv2 che sia il nome effettivo dell'istanza di SQL Server.

EXEC sp_addlinkedserver 'sqlserv2';
GO
EXEC sp_addserver 'rpcserv2';
GO
EXEC sp_setnetname 'rpcserv2', 'sqlserv2';

Nota

L'uso sp_setnetname di per rimandare un server collegato al server locale non è supportato. I server a cui viene fatto riferimento in questo modo non possono partecipare a una transazione distribuita.

Autorizzazioni

Richiede l'appartenenza ai ruoli predefiniti del server sysadmin e setupadmin.

Esempi

Nell'esempio seguente viene illustrata una tipica sequenza amministrativa usata in SQL Server per eseguire la chiamata alla stored procedure remota.

USE master;
GO
EXEC sp_addserver 'Win_1';
EXEC sp_setnetname 'Win_1', 'Win-1';
EXEC Win_1.master.dbo.sp_who;