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 stored procedure può essere utilizzata per abilitare l'esecuzione di chiamate a stored procedure remote in computer il cui nome di rete contiene identificatori di SQL Server non validi.
Si applica a: SQL Server (da SQL Server 2008 a versione corrente). |
Convenzioni della sintassi Transact-SQL
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 in sys.servers sia inclusa esattamente una riga. server è di tipo sysname e non prevede alcun valore predefinito.@netname =' network_name '
Nome di rete del computer a cui vengono effettuate 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;
Vedere anche
Riferimento
Stored procedure del Motore di database (Transact-SQL)