Eksportuj (0) Drukuj
Rozwiń wszystko
Ten artykuł był przetłumaczony komputerowo. Oryginalny tekst zobaczysz, umieszczając wskaźnik myszy nad zdaniami w artykule. Więcej informacji.
Tłumaczenie
Oryginał

ALTER DATABASE (języka Transact-SQL)

Modyfikuje bazy danych lub pliki i grup skojarzonych z bazy danych. Dodaje lub usuwa pliki i grup z bazy danych, zmiany atrybutów bazy danych lub jej plików i grup, zmiany sortowania bazy danych i ustawia opcje bazy danych. Migawki bazy danych nie może być modyfikowana. Aby zmodyfikować opcje bazy danych, związane z replikacją, należy użyć sp_replicationdboption.

Ze względu na jego długości składnia ALTER DATABASE jest podzielony na następujące tematy:

ALTER DATABASE

Bieżący temat przewiduje składnia zmiana nazwy i sortowania bazy danych.

ZMIENIĆ plik bazy danych i opcje grupy plików

Przewiduje składni, dodawanie i usuwanie plików i grup z bazy danych oraz zmiana atrybutów plików i grup.

ALTER DATABASE Ustawianie opcji

Składnia przewiduje zmianę atrybutów bazy danych przy użyciu zestawu opcji ALTER DATABASE.

Dublowanie baza ALTER

Zapewnia składnia Ustawianie opcji ALTER DATABASE, które są powiązane z bazy danych, dublowanie.

ZMIANA BAZY DANYCH ZESTAWU HADR

Zapewnia składnia Zawsze włączone grupy dostępnościOpcje ALTER DATABASE konfigurowania pomocniczego bazy danych pomocniczego repliki grupę dostępności AlwaysOn.

Poziomu zgodności ALTER DATABASE

Zapewnia składnia ustaw opcje ALTER DATABASE, które są związane z poziomu zgodności bazy danych.

Ikona łącza do tematu Konwencje składni języka Transact-SQL


ALTER DATABASE { database_name  | CURRENT }
{
    MODIFY NAME = new_database_name 
  | COLLATE collation_name
  | <file_and_filegroup_options>
  | <set_database_options>
}
[;]

<file_and_filegroup_options >::=
  <add_or_modify_files>::=
  <filespec>::= 
  <add_or_modify_filegroups>::=
  <filegroup_updatability_option>::=

<set_database_options>::=
  <optionspec>::= 
  <auto_option> ::= 
  <change_tracking_option> ::=
  <cursor_option> ::= 
  <database_mirroring_option> ::= 
  <date_correlation_optimization_option> ::=
  <db_encryption_option> ::=
  <db_state_option> ::=
  <db_update_option> ::=
  <db_user_access_option> ::=
  <external_access_option> ::=
  <FILESTREAM_options> ::=
  <HADR_options> ::=  
  <parameterization_option> ::=
  <recovery_option> ::= 
  <service_broker_option> ::=
  <snapshot_option> ::=
  <sql_option> ::= 
  <termination> ::=

database_name

Jest nazwą bazy danych ma zostać zmodyfikowana.

Uwaga Uwaga:

Ta opcja nie jest dostępna w bazie danych zawartych.

BIEŻĄCE

Określa, że bieżąca baza danych używana powinny zostać zmienione.

ZAMKNIĘCIA

Określa stan zamknięcia bazy danych. OFF =-zawarte bazy danych. CZĘŚCIOWE = częściowo zamkniętego bazy danych.

ZMODYFIKOWAĆ nazwę =new_database_name

Zmienia nazwę bazy danych o nazwie określonej jako new_database_name.

COLLATE collation_name

Określa sortowanie dla bazy danych. Wartością collation_name może być nazwa sortowania systemu Windows albo programu SQL. Jeśli nie podano, baza danych jest przypisany sortowania wystąpienie SQL Server.

Aby uzyskać więcej informacji dotyczących nazw sortowań systemu Windows i programu SQL, zobacz temat Sortowanie (języka Transact-SQL).

Aby usunąć bazy danych, należy użyć UPUŚĆ bazę danych.

Aby zmniejszyć rozmiar bazy danych, użyj DBCC SHRINKDATABASE.

Instrukcji ALTER DATABASE musi działać w trybie automatyczne zatwierdzanie (domyślny tryb zarządzania transakcji) i nie jest dozwolony w jawny lub niejawny transakcji.

W SQL Server 2005lub później, stan pliku bazy danych (na przykład online lub offline), jest utrzymywane niezależnie od państwem bazy danych. Aby uzyskać więcej informacji, zobacz Plik Państwa. Stan plików znajdujących się w grupie plików określa dostępność cała grupa plików. Dla grupy plików mają być dostępne wszystkie pliki w obrębie grupy plików musi być w trybie online. Jeśli grupa plików trybu offline, wszelkie próby dostępu grupie plików za pomocą instrukcji SQL zakończy się niepowodzeniem z błędem. Podczas konstruowania planów kwerend dla instrukcji SELECT, optymalizator kwerend unika indeksów nie klastrowanych i Widoki indeksowane, które znajdują się w trybie offline grup. Umożliwia to te oświadczenia powiodła się. Jednakże jeśli grupa plików trybu offline zawiera stosu lub indeks klastrowany tabeli docelowej, się niepowodzeniem instrukcji SELECT. Ponadto nie będzie żadnych instrukcji INSERT, UPDATE lub DELETE, która modyfikuje tabelę z dowolnym indeks w trybie offline grupę plików.

Gdy baza danych jest w stanie przywracanie, większość instrukcji ALTER DATABASE nie powiedzie się. Wyjątkiem jest ustawienie bazy danych dublowanie opcje. Baza danych może być w stanie przywracanie, podczas operacji przywracania aktywny lub podczas operacji przywracania pliku bazy danych lub dziennika nie powiedzie się z powodu uszkodzonego pliku kopii zapasowej.

Bufor planu dla wystąpienia SQL Serverjest wyczyszczone ustawiając jedną z następujących opcji:

OFFLINE

READ_WRITE

ONLINE

ZMODYFIKOWAĆ DOMYŚLNE GRUPY PLIKÓW

MODIFY_NAME

MODYFIKOWANIE GRUPY PLIKÓW READ_WRITE

COLLATE

MODYFIKOWANIE GRUPY PLIKÓW READ_ONLY

READ_ONLY

 

Wyczyszczenie pamięci podręcznej planu powoduje ponowną kompilację wszystkich kolejnych wykonanie planów i może spowodować nagłe, tymczasowe spadkiem wyników kwerendy. Dla każdego wyczyszczone cachestore w pamięci podręcznej planu SQL ServerDziennik błędów zawiera następujący komunikat informacyjny: " SQL Server napotkał %d occurrence(s) cachestore opróżniania dla ' % s' cachestore (część planu pamięci podręcznej) ze względu na niektóre operacje utrzymywania lub reconfigure bazy danych". Ten komunikat jest rejestrowane co pięć minut, tak długo, jak pamięć podręczna jest opróżniany w tym przedziale czasu.

Zmiana sortowania bazy danych

Przed zastosowaniem różnych sortowania do bazy danych, upewnij się, że następujące warunki są w miejscu:

  1. Masz tylko jeden aktualnie używa bazy danych.

  2. Nie obiektów związanych ze schematem zależy od sortowania bazy danych.

    Jeśli następujące obiekty, które zależą od sortowania bazy danych, istnieje w bazie danych, ALTER DATABASEdatabase_nameinstrukcji Sortuj zakończy się niepowodzeniem. SQL Serverzwróci komunikat o błędzie dla każdego obiektu blokowania akcji ALTER:

    • Funkcje zdefiniowane przez użytkownika i widoki utworzone z SCHEMABINDING.

    • Kolumny obliczane.

    • Ograniczeń CHECK.

    • Wartościami przechowywanymi w tabeli funkcji, które zwracają tabel z kolumn wartości character z sortowania dziedziczone z domyślnym sortowaniem bazy danych.

    Informacji o zależnościach dla podmiotów związany schematu jest automatycznie aktualizowany, gdy sortowania bazy danych zostanie zmieniona.

Zmiana sortowania bazy danych nie tworzyć duplikaty wśród nazwy systemu dla obiektów bazy danych. Jeśli zduplikowanych nazw w wyniku zmiany sortowania, następujących nazw może spowodować niepowodzenie zmiany sortowania bazy danych:

  • Nazwy obiektów takich jak procedura, tabeli, wyzwalacz lub widoku.

  • Nazwy schematu

  • Podmioty takie jak grupa, roli lub użytkownika.

  • Skalar typu nazwy, takie jak system i typy zdefiniowane przez użytkownika.

  • Nazwy katalog pełnotekstowy.

  • Nazwy kolumn lub parametr wewnątrz obiektu.

  • Nazwy indeksów w tabeli.

Zduplikowane nazwy wynikające z nowych sortowania spowoduje działań zmieniających się niepowodzeniem, a SQL Serverzwróci komunikat o błędzie, określanie obszaru nazw w przypadku duplikat został znaleziony.

Przeglądanie informacji z bazy danych

Zwraca informacje o bazach danych, plikach i grup można użyć katalogu widoków, funkcji systemu i procedur systemu przechowywane.

Wymaga ALTER uprawnień w bazie danych.

A.Zmiana nazwy bazy danych

Poniższy przykład przedstawia zmianę nazwy AdventureWorks2012bazy danych do Northwind.

USE master;
GO
ALTER DATABASE AdventureWorks2012
Modify Name = Northwind ;
GO
USE master;
GO
ALTER DATABASE AdventureWorks2012
Modify Name = Northwind ;
GO

B.Zmiany sortowania bazy danych

Poniższy przykład tworzy bazę danych o nazwie testdbz SQL_Latin1_General_CP1_CI_As sortowanie, a następnie zmienia sortowania testdbbazy danych do COLLATE French_CI_AI.

USE master;
GO

CREATE DATABASE testdb
COLLATE SQL_Latin1_General_CP1_CI_AS ;
GO

ALTER DATABASE testDB
COLLATE French_CI_AI ;
GO
USE master;
GO

CREATE DATABASE testdb
COLLATE SQL_Latin1_General_CP1_CI_AS ;
GO

ALTER DATABASE testDB
COLLATE French_CI_AI ;
GO

Zawartość społeczności

Dodaj
Pokaż:
© 2014 Microsoft