Dela via


Visa eller ändra egenskaperna för en databas

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Det här avsnittet beskriver hur du visar eller ändrar egenskaperna för en databas i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL. När du har ändrat en databasegenskap börjar ändringen gälla omedelbart.

i det här avsnittet

Innan du börjar

Rekommendationer

  • När AUTO_CLOSE är PÅ returnerar vissa kolumner i sys.databases katalogvy och funktionen DATABASEPROPERTYEX NULL eftersom databasen inte är tillgänglig för att hämta data. Lös problemet genom att öppna databasen.

Säkerhet

Behörigheter

Kräver ALTER-behörighet för databasen för att ändra egenskaperna för en databas. Kräver minst medlemskap i den offentliga databasrollen för att visa egenskaperna för en databas.

Använda SQL Server Management Studio

Så här visar eller ändrar du egenskaperna för en databas

  1. I Object Exploreransluter du till en instans av SQL Server Database Engine och expanderar sedan den instansen.

  2. Expandera Databaser, högerklicka på databasen för att visa och klicka sedan på Egenskaper.

  3. I dialogrutan Databasegenskaper väljer du en sida för att visa motsvarande information. Välj till exempel sidan Filer för att visa information om data och loggfiler.

Använda Transact-SQL

Transact-SQL innehåller ett antal olika metoder för att visa egenskaperna för en databas och för att ändra egenskaperna för en databas. Om du vill visa egenskaperna för en databas kan du använda funktionen DATABASEPROPERTYEX (Transact-SQL) och sys.databases (Transact-SQL) katalogvy. Om du vill ändra egenskaperna för en databas kan du använda versionen av ALTER DATABASE-instruktionen för din miljö: ALTER DATABASE (Transact-SQL) eller ALTER DATABASE (Azure SQL Database). Om du vill visa egenskaper för databasomfång använder du sys.database_scoped_configurations (Transact-SQL) katalogvy och för att ändra egenskaper för databasomfång använder du ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)-instruktionen.

Så här visar du en egenskap för en databas med hjälp av funktionen DATABASEPROPERTYEX

  1. Anslut till databasmotorn och anslut sedan till den databas som du vill visa dess egenskaper för.

  2. I standardfältet klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret och klicka på Kör. I det här exemplet används DATABASEPROPERTYEX systemfunktion för att returnera status för AUTO_SHRINK databasalternativet i AdventureWorks2022-databasen. Ett returvärde på 1 innebär att alternativet är inställt på PÅ, och ett returvärde på 0 innebär att alternativet är inställt på OFF.

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

Så här visar du egenskaperna för en databas genom att fråga sys.databases

  1. Anslut till databasmotorn och anslut sedan till den databas som du vill visa dess egenskaper för..

  2. I standardfältet klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret och klicka på Kör. Det här exemplet frågar sys.databases katalogvy för att visa flera egenskaper för AdventureWorks2022-databasen. Det här exemplet returnerar databas-ID-numret (database_id), om databasen är skrivskyddad eller skrivbar (is_read_only), kollationering för databasen (collation_name) och kompatibilitetsnivån för databasen (compatibility_level).

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

Så här visar du egenskaperna för en databasomfattande konfiguration genom att fråga sys.databases_scoped_configuration

  1. Anslut till databasmotorn och anslut sedan till den databas som du vill visa dess egenskaper för..

  2. I standardfältet klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret och klicka på Kör. Det här exemplet frågar sys.database_scoped_configurations (Transact-SQL) katalogvy för att visa flera egenskaper för den aktuella databasen.

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

    Fler exempel finns i sys.database_scoped_configurations (Transact-SQL)

Så här ändrar du egenskaperna för en SQL Server 2016-databas med ALTER DATABASE

  1. Anslut till databasmotorn.

  2. I standardfältet klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret. Exemplet bestämmer tillståndet för ögonblicksbildisolering på AdventureWorks2022-databasen, ändrar egenskapens tillstånd och verifierar sedan ändringen.

    Om du vill fastställa tillståndet för ögonblicksbildisolering väljer du den första SELECT-instruktionen och klickar på Kör.

    Om du vill ändra tillståndet för ögonblicksbildisolering väljer du instruktionen ALTER DATABASE och klickar på Kör.

    Kontrollera ändringen genom att välja den andra SELECT-instruktionen och klicka på Kör.

    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
    

Så här ändrar du egenskaperna för databasomfattningen med HJÄLP av ALTER DATABASE SCOPED CONFIGURATION

  1. Anslut till en databas i SQL Server-instansen.

  2. I standardfältet klickar du på Ny fråga.

  3. Kopiera och klistra in följande exempel i frågefönstret. I följande exempel anges MAXDOP för en sekundär databas till värdet för den primära databasen.

    ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY   
    

Se även

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