Visualizzare o modificare le proprietà di un database

Si applica a: SQL Server, Database SQL di Azure e Istanza gestita di SQL di Azure

Questo argomento illustra come visualizzare o modificare le proprietà di un database in SQL Server usando SQL Server Management Studio o Transact-SQL. Dopo aver modificato la proprietà di un database, la modifica diventa effettiva immediatamente.

Contenuto dell'articolo

Prima di iniziare

Consigli

  • Se l'opzione AUTO_CLOSE è impostata su ON, alcune colonne nella vista del catalogo sys.databases e della funzione DATABASEPROPERTYEX restituiranno NULL perché il database non è disponibile per il recupero dei dati. Per risolvere questo problema, aprire il database.

Sicurezza

Autorizzazioni

Richiede l'autorizzazione ALTER per il database per modificare le proprietà di un database. Richiede almeno l'appartenenza al ruolo del database Public per visualizzare le proprietà di un database.

Utilizzo di SQL Server Management Studio

Per visualizzare o modificare le proprietà di un database

  1. In Esplora oggetti connettersi a un'istanza del motore di database di SQL Server e, successivamente, espanderla.

  2. Espandere Database, fare clic con il pulsante destro del mouse sul database da visualizzare, quindi scegliere Proprietà.

  3. Nella finestra di dialogo Proprietà database selezionare una pagina per visualizzare le informazioni corrispondenti. Selezionare la pagina File , ad esempio, per visualizzare le informazioni sui file di dati e di log.

Utilizzo di Transact-SQL

Transact-SQL fornisce una serie di metodi diversi per visualizzare le proprietà di un database e la modifica delle proprietà di un database. Per visualizzare le proprietà di un database, è possibile usare la funzione DATABASEPROPERTYEX (Transact-SQL) e la vista del catalogo sys.databases (Transact-SQL) . Per modificare le proprietà di un database, è possibile usare la versione dell'istruzione ALTER DATABASE per l'ambiente: ALTER DATABASE (Transact-SQL) o ALTER DATABASE (database SQL di Azure). Per visualizzare le proprietà con ambito database, usare la vista del catalogo sys.database_scoped_configurations (Transact-SQL) , mentre per modificarle, usare l'istruzione ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Per visualizzare una proprietà di un database usando la funzione DATABASEPROPERTYEX

  1. Connettersi al motore di database e quindi connettersi al database di cui vogliono visualizzare le proprietà.

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Questo esempio usa la funzione di sistema DATABASEPROPERTYEX per restituire lo stato dell'opzione di database AUTO_SHRINK nel database AdventureWorks2022 . Un valore restituito pari a 1 indica che l'opzione è impostata su ON, mentre un valore restituito pari a 0 indica che l'opzione è impostata su OFF.

    SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');  
    

Per visualizzare le proprietà di un database eseguendo una query su sys.databases

  1. Connettersi al motore di database e quindi connettersi al database di cui vogliono visualizzare le proprietà.

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. In questo esempio si esegue una query sulla vista del catalogo sys.databases per visualizzare diverse proprietà del database AdventureWorks2022 . In questo esempio viene restituito il numero ID del database (database_id), se il database è di sola lettura o di lettura e scrittura (is_read_only), le regole di confronto per il database (collation_name), nonché il livello di compatibilità del database (compatibility_level).

    SELECT database_id, is_read_only, collation_name, compatibility_level  
    FROM sys.databases WHERE name = 'AdventureWorks2022';  
    

Per visualizzare le proprietà di una configurazione con ambito database eseguendo una query su sys.databases_scoped_configuration

  1. Connettersi al motore di database e quindi connettersi al database di cui vogliono visualizzare le proprietà.

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. In questo esempio si esegue una query sulla vista del catalogo sys.database_scoped_configurations (Transact-SQL) per visualizzare diverse proprietà del database corrente.

    SELECT configuration_id, name, value, value_for_secondary  
    FROM sys.database_scoped_configurations;  
    

    Per altri esempi, vedere sys.database_scoped_configurations (Transact-SQL)

Per modificare le proprietà di un database di SQL Server 2016 usando ALTER DATABASE

  1. Connettersi al motore di database di .

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query. Nell'esempio si determina lo stato di isolamento dello snapshot nel database AdventureWorks2022 , si modifica lo stato della proprietà, quindi si verifica la modifica.

    Per determinare lo stato di isolamento dello snapshot, selezionare la prima istruzione SELECT e fare clic su Esegui.

    Per modificare lo stato di isolamento dello snapshot, selezionare la prima istruzione ALTER DATABASE e fare clic su Esegui.

    Per verificare la modifica, selezionare la seconda istruzione SELECT e fare clic su Esegui.

    USE AdventureWorks2022;
    GO
    -- Check the state of the snapshot_isolation_framework
    -- in the database.
    SELECT name, snapshot_isolation_state,
         snapshot_isolation_state_desc AS description
    FROM sys.databases
    WHERE name = N'AdventureWorks2022';
    GO
    USE master;
    GO
    ALTER DATABASE AdventureWorks2022
        SET ALLOW_SNAPSHOT_ISOLATION ON;
    GO
    -- Check again.
    SELECT name, snapshot_isolation_state,
         snapshot_isolation_state_desc AS description
    FROM sys.databases
    WHERE name = N'AdventureWorks2022';
    GO
    

Per modificare le proprietà con ambito database usando ALTER DATABASE SCOPED CONFIGURATION

  1. Connettersi a un database nell'istanza di SQL Server.

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query. L'esempio seguente imposta MAXDOP per un database secondario sul valore per il database primario.

    ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY   
    

Vedi anche

sys.databases (Transact-SQL)
DATABASEPROPERTYEX (Transact-SQL)
ALTER DATABASE (Transact-SQL)
ALTER DATABASE (database SQL di Azure)
ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)
sys.database_scoped_configurations (Transact-SQL)