sp_serveroption (Transact-SQL)sp_serveroption (Transact-SQL)

SI APPLICA A: sìSQL Server noDatabase SQL di Azure noAzure SQL Data Warehouse noParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Imposta le opzioni per server remoti e server collegati.Sets server options for remote servers and linked servers.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintassiSyntax

sp_serveroption [@server = ] 'server'   
      ,[@optname = ] 'option_name'       
      ,[@optvalue = ] 'option_value' ;  

ArgomentiArguments

[ @server = ] 'server' È il nome del server per cui impostare l'opzione.[ @server = ] 'server' Is the name of the server for which to set the option. server è di tipo sysnamee non prevede alcun valore predefinito.server is sysname, with no default.

[ @optname = ] 'option_name' È possibile impostare per il server specificato.[ @optname = ] 'option_name' Is the option to set for the specified server. option_name viene varchar ( 35 ) , non prevede alcun valore predefinito.option_name is varchar( 35 ), with no default. option_name può essere uno dei valori seguenti.option_name can be any of the following values.

ValueValue DescrizioneDescription
regole di confronto compatibilicollation compatible Influisce sull'esecuzione delle query distribuite in server collegati.Affects Distributed Query execution against linked servers. Se questa opzione è impostata su true, SQL ServerSQL Server presuppone che tutti i caratteri del server collegato sono compatibili con il server locale, relativamente al sequenza delle regole di confronto e set di caratteri (o ordinamento).If this option is set to true, SQL ServerSQL Server assumes that all characters in the linked server are compatible with the local server, with regard to character set and collation sequence (or sort order). Ciò consente a SQL ServerSQL Server di inviare al provider i confronti per colonne di tipo carattere.This enables SQL ServerSQL Server to send comparisons on character columns to the provider. Se questa opzione non è impostata, SQL ServerSQL Server valuta sempre i confronti per le colonne di tipo carattere localmente.If this option is not set, SQL ServerSQL Server always evaluates comparisons on character columns locally.

Impostare questa opzione solo se nell'origine dei dati corrispondente al server collegato il set di caratteri e il tipo di ordinamento corrispondono a quelli del server locale.This option should be set only if it is certain that the data source corresponding to the linked server has the same character set and sort order as the local server.
nome delle regole di confrontocollation name Specifica il nome delle regole di confronto utilizzate dall'origine dei dati remota se usare regole di confronto remote viene true e l'origine dati non è un SQL ServerSQL Server zdroj dat.Specifies the name of the collation used by the remote data source if use remote collation is true and the data source is not a SQL ServerSQL Server data source. È necessario specificare il nome di uno dei set di regole di confronto supportate da SQL ServerSQL Server.The name must be one of the collations supported by SQL ServerSQL Server.

Utilizzare questa opzione per accedere a un'origine dei dati OLE DB diversa da SQL ServerSQL Serverche utilizza regole di confronto di SQL ServerSQL Server .Use this option when accessing an OLE DB data source other than SQL ServerSQL Server, but whose collation matches one of the SQL ServerSQL Server collations.

Il server collegato deve supportare regole di confronto singole da utilizzare per tutte le colonne del server.The linked server must support a single collation to be used for all columns in that server. Non impostare questa opzione quando il server collegato supporta più regole di confronto nella stessa origine dei dati oppure non è possibile stabilire se le regole di confronto del server collegato corrispondono a una delle regole di confronto di SQL ServerSQL Server .Do not set this option if the linked server supports multiple collations within a single data source, or if the linked server's collation cannot be determined to match one of the SQL ServerSQL Server collations.
timeout della connessioneconnect timeout Secondi valuein timeout per la connessione a un server collegato.Time-out valuein seconds for connecting to a linked server.

Se 0, utilizzare il sp_configure predefinito.If 0, use the sp_configure default.
accesso ai datidata access Consente di attivare e disabilitare un server collegato per l'accesso a query distribuite.Enables and disables a linked server for distributed query access. Può essere usato solo per sys le voci aggiunte tramite sp_addlinkedserver.Can be used only for sys.server entries added through sp_addlinkedserver.
distdist Server di distribuzione.Distributor.
convalida differita dello schemalazy schema validation Determina se lo schema delle tabelle remote viene controllato.Determines whether the schema of remote tables will be checked.

Se true, ignorare controllo dello schema delle tabelle remote all'inizio della query.If true, skip schema checking of remote tables at the beginning of the query.
pubpub Server di pubblicazione.Publisher.
timeout queryquery timeout Timeout per le query eseguite nel server collegato.Time-out value for queries against a linked server.

Se 0, utilizzare il sp_configure predefinito.If 0, use the sp_configure default.
rpcrpc Abilita l'esecuzione di chiamate RPC dal server specificato.Enables RPC from the given server.
chiamate RPC in uscitarpc out Abilita l'esecuzione di chiamate RPC al server specificato.Enables RPC to the given server.
subsub Sottoscrittore.Subscriber.
systemsystem Identificato solo a scopo informativo.Identified for informational purposes only. Non supportato.Not supported. Non è garantita la compatibilità con le versioni future.Future compatibility is not guaranteed.
usare regole di confronto remoteuse remote collation Determina se vengono utilizzate le regole di confronto di una colonna remota o di un server locale.Determines whether the collation of a remote column or of a local server will be used.

Se true, le regole di confronto delle colonne remote viene usato per SQL ServerSQL Server origini dati e le regole di confronto specificato nel nome regole di confronto viene usato per non -SQL ServerSQL Server origini dati.If true, the collation of remote columns is used for SQL ServerSQL Server data sources, and the collation specified in collation name is used for non-SQL ServerSQL Server data sources.

Se false, le query distribuite userà sempre le regole di confronto predefinite del server locale, mentre nome regole di confronto e le regole di confronto delle colonne remote vengono ignorate.If false, distributed queries will always use the default collation of the local server, while collation name and the collation of remote columns are ignored. Il valore predefinito è false.The default is false. (Il false valore è compatibile con la semantica delle regole di confronto utilizzata SQL ServerSQL Server 7.0.)(The false value is compatible with the collation semantics used in SQL ServerSQL Server 7.0.)
promozione delle transazioni procedure remoteremote proc transaction promotion Questa opzione consente di proteggere le azioni di una procedura da server a server tramite una transazione MS DTC ( MicrosoftMicrosoft Distributed Transaction Coordinator).Use this option to protect the actions of a server-to-server procedure through a MicrosoftMicrosoft Distributed Transaction Coordinator (MS DTC) transaction. Quando questa opzione è TRUE (o ON) chiama una stored procedure remota viene avviata una transazione distribuita e integrazione della transazione in MS DTC.When this option is TRUE (or ON) calling a remote stored procedure starts a distributed transaction and enlists the transaction with MS DTC. L'istanza di SQL ServerSQL Server in cui viene chiamata la stored procedure remota corrisponde all'origine della transazione e ne controlla il completamento.The instance of SQL ServerSQL Server making the remote stored procedure call is the transaction originator and controls the completion of the transaction. Quando per la connessione viene successivamente eseguita un'istruzione COMMIT TRANSACTION o ROLLBACK TRANSACTION, l'istanza di controllo richiede che il completamento della transazione distribuita nei computer interessati venga gestito da MS DTC.When a subsequent COMMIT TRANSACTION or ROLLBACK TRANSACTION statement is issued for the connection, the controlling instance requests that MS DTC manage the completion of the distributed transaction across the computers involved.

Dopo l'avvio di una transazione distribuita Transact-SQLTransact-SQL, è possibile chiamare stored procedure remote in altre istanze di SQL ServerSQL Server definite come server collegati.After a Transact-SQLTransact-SQL distributed transaction has been started, remote stored procedure calls can be made to other instances of SQL ServerSQL Server that have been defined as linked servers. Tutti i server collegati sono integrati nella transazione distribuita Transact-SQLTransact-SQL. MS DTC garantisce inoltre che la transazione venga completata in ogni server collegato.The linked servers are all enlisted in the Transact-SQLTransact-SQL distributed transaction, and MS DTC ensures that the transaction is completed against each linked server.

Se questa opzione è impostata su FALSE (o OFF), una transazione locale non sarà promossa a transazione distribuita durante una chiamata di procedura remota in un server collegato.If this option is set to FALSE (or OFF), a local transaction will not be promoted to a distributed transaction while calling a remote procedure call on a linked server.

Se prima di effettuare una chiamata di una procedura da server a server la transazione è già una transazione distribuita, questa opzione non ha alcun effetto.If before making a server-to-server procedure call, the transaction is already a distributed transaction, then this option does not have effect. La chiamata di procedura nel server collegato verrà eseguita nella stessa transazione distribuita.The procedure call against linked server will run under the same distributed transaction.

Se prima di effettuare una chiamata di una procedura da server a server non vi sono transazioni attive nella connessione, questa opzione non ha alcun effetto.If before making a server-to-server procedure call, there is no transaction active in the connection, then this option does not have effect. La procedura viene quindi eseguita nel server collegato senza transazioni attive.The procedure then runs against linked server without active transactions.

Il valore predefinito per questa opzione è TRUE (o ON).The default value for this option is TRUE (or ON).

[ @optvalue = ] 'option_value' Specifica o meno il option_name deve essere abilitata (TRUE o sul) o disabilitato (FALSE o off).[ @optvalue = ] 'option_value' Specifies whether or not the option_name should be enabled (TRUE or on) or disabled (FALSE or off). option_value viene varchar ( 10 ) , non prevede alcun valore predefinito.option_value is varchar( 10 ), with no default.

option_value può essere un numero intero non negativo per il timeout della connessione e timeout query opzioni.option_value may be a nonnegative integer for the connect timeout and query timeout options. Per il nome delle regole di confronto opzione option_value può essere un nome delle regole di confronto o NULL.For the collation name option, option_value may be a collation name or NULL.

Valori restituitiReturn Code Values

0 (esito positivo) o 1 (esito negativo)0 (success) or 1 (failure)

NoteRemarks

Se il regole di confronto compatibili opzione è impostata su TRUE, nome regole di confronto viene impostata automaticamente su NULL.If the collation compatible option is set to TRUE, collation name automatically will be set to NULL. Se nome delle regole di confronto è impostata su un valore non null, regole di confronto compatibili viene impostata automaticamente su FALSE.If collation name is set to a nonnull value, collation compatible automatically will be set to FALSE.

PermissionsPermissions

È richiesta l'autorizzazione ALTER ANY LINKED SERVER per il server.Requires ALTER ANY LINKED SERVER permission on the server.

EsempiExamples

Nell'esempio seguente viene configurata la compatibilità delle regole di confronto tra un server collegato corrispondente a un'altra istanza di SQL ServerSQL Server, SEATTLE3, e l'istanza locale di SQL ServerSQL Server.The following example configures a linked server corresponding to another instance of SQL ServerSQL Server, SEATTLE3, to be collation compatible with the local instance of SQL ServerSQL Server.

USE master;  
EXEC sp_serveroption 'SEATTLE3', 'collation compatible', 'true';  

Vedere ancheSee Also

Distributed query Stored procedure (Transact-SQL) Distributed Queries Stored Procedures (Transact-SQL)
sp_adddistpublisher (Transact-SQL) sp_adddistpublisher (Transact-SQL)
sp_addlinkedserver (Transact-SQL) sp_addlinkedserver (Transact-SQL)
sp_dropdistpublisher (Transact-SQL) sp_dropdistpublisher (Transact-SQL)
sp_helpserver (Transact-SQL) sp_helpserver (Transact-SQL)
Stored procedure di sistema (Transact-SQL)System Stored Procedures (Transact-SQL)