sp_setnetname (Transact-SQL)
Imposta i nomi di rete in sys.servers sui nomi dei computer di rete effettivi per le istanze remote di SQL Server. Questa procedura consente di attivare l'esecuzione di chiamate a stored procedure remote in computer il cui nome di rete contiene identificatori di SQL Server non validi.
Sintassi
sp_setnetname
@server = 'server',
@netname = 'network_name'
Argomenti
@server = 'server'
Nome del server remoto specificato nella sintassi di chiamata a stored procedure remote codificata dall'utente. Per utilizzare questo server è necessario che sys.servers includa esattamente una riga. server è di tipo sysname e non prevede alcun valore predefinito.@netname ='network_name'
Nome di rete del computer a cui vengono inviate chiamate a stored procedure remote. network_name è di tipo sysname e non prevede alcun valore predefinito.Questo nome deve corrispondere al nome del computer Microsoft Windows e può includere caratteri non consentiti negli identificatori di SQL Server.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Set di risultati
Nessuno
Osservazioni
Se il nome del computer contiene identificatori non validi, potrebbero verificarsi problemi durante l'esecuzione di alcune chiamate a stored procedure remote a computer Windows.
I server collegati e i server remoti sono inclusi nello stesso spazio dei nomi. Devono quindi avere nomi diversi. È tuttavia possibile definire sia un server collegato che un server remoto in base a un server specifico. A tale scopo assegnare nomi diversi e utilizzare sp_setnetname per impostare il nome di rete di uno dei due server sul nome di rete del server sottostante.
--Assume sqlserv2 is actual name of SQL Server
--database server
EXEC sp_addlinkedserver 'sqlserv2';
GO
EXEC sp_addserver 'rpcserv2';
GO
EXEC sp_setnetname 'rpcserv2', 'sqlserv2';
Nota
Non è supportato l'utilizzo di sp_setnetname per impostare un server collegato in modo che faccia nuovamente riferimento al server locale. I server a cui viene fatto riferimento in questo modo non possono partecipare a transazioni distribuite.
Autorizzazioni
È necessaria l'appartenenza ai ruoli predefiniti del server sysadmin e setupadmin.
Esempi
Nell'esempio seguente viene illustrata una tipica sequenza di amministrazione utilizzata in SQL Server per eseguire la chiamata a una 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;