Visualize ou altere as propriedades de uma base de dados

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada SQL do Azure

Este artigo descreve como visualizar ou alterar as propriedades de uma base de dados no SQL Server com SQL Server Management Studio ou Transact-SQL. Depois de alterar uma propriedade de banco de dados, a modificação entra em vigor imediatamente.

Recomendações

  • Quando AUTO_CLOSE é ON, algumas colunas na vista de catálogo sys.databases e na função DATABASEPROPERTYEX devolvem NULL porque a base de dados não está disponível para obter os dados. Para resolver este problema, abra a base de dados.

Permissões

Para alterar as propriedades de uma base de dados, é necessária ALTER permissão na base de dados. Para ver as propriedades de uma base de dados, é necessário ser, pelo menos, membro da função fixa da base de dados public.

Utilize SQL Server Management Studio

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados do SQL Server e expanda essa instância.

  2. Expanda Bases de Dados, clique com o botão direito na base de dados para visualizar e depois selecione Propriedades.

  3. Na caixa de diálogo Propriedades do Banco de Dados, selecione uma página para exibir as informações correspondentes. Por exemplo, selecione a página Arquivos para exibir informações sobre dados e arquivos de log.

Utilize o Transact-SQL

Transact-SQL fornece vários métodos diferentes para exibir as propriedades de um banco de dados e para alterar as propriedades de um banco de dados. Para visualizar as propriedades de uma base de dados, utilize a função DATABASEPROPERTYEX e a vista de catálogo sys.databases . Para alterar as propriedades de uma base de dados, use a versão da ALTER DATABASE instrução para o seu ambiente: ALTER DATABASE ou ALTER DATABASE. Para consultar propriedades com escopo ao nível da base de dados, utilize a vista de catálogo sys.database_scoped_configurations. Para alterar propriedades ao nível da base de dados, utilize a instrução ALTER DATABASE SCOPED CONFIGURATION.

Veja uma propriedade de uma base de dados com a DATABASEPROPERTYEX função

  1. Liga-te ao Database Engine e depois liga-te à base de dados para a qual queres visualizar as suas propriedades.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo utiliza a função de sistema DATABASEPROPERTYEX para devolver o estado da opção AUTO_SHRINK na base de dados AdventureWorks2025. Um valor de retorno de 1 significa que a opção está definida para ON, e um valor de retorno de 0 significa que a opção está definida para OFF.

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

Veja as propriedades de uma base de dados através de consultas sys.databases

  1. Liga-te ao Database Engine e depois liga-te à base de dados para a qual queres visualizar as suas propriedades.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo consulta a vista de catálogo sys.databases para visualizar várias propriedades do banco de dados AdventureWorks2025. Este exemplo retorna o número de ID do banco de dados (database_id), se o banco de dados é somente leitura ou leitura-gravação (is_read_only), o agrupamento para o banco de dados (collation_name) e o nível de compatibilidade do banco de dados (compatibility_level).

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

Visualize as propriedades de uma configuração com âmbito de base de dados consultando sys.databases_scoped_configuration

  1. Liga-te ao Database Engine e depois liga-te à base de dados para a qual queres visualizar as suas propriedades.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. Este exemplo consulta a vista de catálogo sys.database_scoped_configurations para ver várias propriedades da base de dados atual.

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

    Para mais exemplos, veja sys.database_scoped_configurations.

Altere as propriedades de uma base de dados SQL Server comALTER DATABASE

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta. O exemplo verifica o estado do isolamento instantâneo na AdventureWorks2025 base de dados, altera o estado da propriedade e depois verifica a alteração.

    Para verificar o estado do isolamento de snapshots, selecione a primeira SELECT instrução e selecione Executar.

    Para alterar o estado do isolamento do snapshot, selecione a ALTER DATABASE instrução e selecione Executar.

    Para verificar a alteração, selecione a segunda SELECT instrução e selecione Executar.

    USE AdventureWorks2025;
    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'AdventureWorks2025';
    GO
    
    USE master;
    GO
    
    ALTER DATABASE AdventureWorks2025
        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'AdventureWorks2025';
    GO
    

Alterar as propriedades de âmbito da base de dados com ALTER DATABASE SCOPED CONFIGURATION

  1. Conecte-se a um banco de dados em sua instância do SQL Server.

  2. Na barra Padrão, selecione Nova consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta. O exemplo seguinte define MAXDOP para uma base de dados secundária o valor da base de dados primária.

    ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY
        SET MAXDOP = PRIMARY;