Baza danych SQL Server: tworzenie, modyfikowanie, usuwanie i przywracanie

⚡ Inteligentne podsumowanie

Bazy danych SQL Server to kontenery przechowujące tabele, widoki, procedury składowane i inne obiekty. Tworzenie, modyfikowanie i usuwanieping, a przywracanie bazy danych można wykonać za pomocą programu SQL Server Management Studio lub instrukcji Transact-SQL.

  • 🗄️ Baza danych: Baza danych SQL Server przechowuje tabele, widoki, procedury i funkcje w jednym uporządkowanym, powiązanym kontenerze.
  • 🧩 System kontra użytkownik: Bazy danych systemowych (master, msdb, model, tempdb, resource) instalują się automatycznie; bazy danych użytkowników tworzysz samodzielnie.
  • 🖱️. Stwórz: Dodaj bazę danych za pomocą okna dialogowego Nowa baza danych w Eksploratorze obiektów lub za pomocą polecenia CREATE DATABASE.
  • ✏️ Zmieniać: Zmień nazwę bazy danych lub jej pliki i opcje, korzystając z polecenia ALTER DATABASE lub menu Zmień nazwę.
  • 🗑️ Upuszczać: Usuń bazę danych użytkownika za pomocą polecenia DROP DATABASE lub opcji Delete; nie można usunąć baz danych systemowych.
  • 💾 Przywracać: Odbudowa bazy danych z pliku kopii zapasowej .bak przy użyciu polecenia RESTORE DATABASE.

Tworzenie, modyfikowanie, usuwanie i przywracanie bazy danych SQL Server

Co to jest baza danych?

Baza danych to zbiór obiektów, takich jak: stoły, widoki, procedury składowane, wyzwalacze i funkcje. W SQL ServerBaza danych to uporządkowane miejsce, w którym przechowywane i połączone są wszystkie powiązane obiekty.

Rozważmy kilka przykładów z życia:

  • Regał na książki to miejsce, w którym znajdują się książki.
  • Dom to miejsce, w którym mieszkamy.
  • Parking to miejsce, w którym parkuje się pojazdy, a przykłady takich miejsc można mnożyć.

Podobnie, baza danych jest swego rodzaju domem dla wszystkich naszych tabel, widoków i procedur składowanych. Technicznie rzecz biorąc, baza danych przechowuje dane w uporządkowany sposób, aby ułatwić dostęp i wyszukiwanie. W SQL Server istnieją dwa typy baz danych:

  • Bazy danych systemowych: Są one tworzone automatycznie podczas instalacji programu SQL Server. Odgrywają kluczową rolę na serwerze, zwłaszcza w zapewnieniu prawidłowego działania obiektów bazy danych. Przykładami systemowych baz danych SQL Server są: master, msdb, model, tempdb i resource.
  • Bazy danych użytkowników: Są one tworzone przez użytkowników baz danych, takich jak Ty, którym przyznano uprawnienia do tworzenia baz danych.

Zasady tworzenia bazy danych

Najpierw musisz poznać podstawowe zasady tworzenia nowej bazy danych:

  • Nazwy baz danych muszą być unikalne w obrębie instancji SQL Server.
  • Nazwy baz danych mogą mieć maksymalnie 128 znaków.
  • Polecenie CREATE DATABASE musi zostać uruchomione w trybie automatycznego zatwierdzania.

Poniższy rysunek przedstawia dwa dostępne podejścia do tworzenia bazy danych w programie SQL Server.

Dwa sposoby tworzenia bazy danych SQL Server: Management Studio i Transact-SQL

Istnieją dwa sposoby tworzenia bazy danych w programie SQL Server:

Jak utworzyć bazę danych w SQL Server Management Studio

Poniżej przedstawiono krok po kroku proces tworzenia bazy danych w programie SQL Server Management Studio:

Krok 1) Kliknij prawym przyciskiem myszy pozycję „Baza danych” w oknie „Eksploratora obiektów”, a następnie wybierz opcję „Nowa baza danych”.

Poniżej pokazano menu prawego przycisku myszy z opcją Nowa baza danych.

Kliknij prawym przyciskiem myszy węzeł Baza danych w Eksploratorze obiektów z wybraną opcją Nowa baza danych

Krok 2) Pojawi się ekran „Nowa baza danych”. Wprowadź „Nazwę bazy danych”. Kolumna „Nazwa logiczna” zostanie automatycznie uzupełniona:

  • Edu – Typ pliku: Wiersze danych i grupa plików: PODSTAWOWA
  • Edu_log – typ pliku: LOG i grupa plików: „Nie dotyczy”

Poniżej pokazano okno dialogowe Nowa baza danych zawierające nazwę bazy danych i jej pliki logiczne.

Nowe okno dialogowe bazy danych pokazujące nazwę bazy danych Edu oraz pliki logiczne Edu i Edu_log

Tutaj:

  • A) Edu (typ pliku: Rows Data, grupa plików: PRIMARY) jest plikiem danych .mdf.
  • B) Edu_log (typ pliku: LOG, grupa plików: 'Nie dotyczy') to plik dziennika .ldf.

Krok 3) (Opcjonalnie) W przypadku bardziej złożonych ustawień możesz przejść do stron „Opcje” i „Grupy plików”. Na poziomie początkującym wystarczy utworzyć bazę danych z zakładki Ogólne.

Poniżej znajdują się strony Opcje i Grupy plików.

Nowe strony Opcje bazy danych i Grupy plików dla ustawień zaawansowanych

Krok 4) Kliknij „Dodaj” (przycisk OK), aby utworzyć bazę danych.

Poniżej zaznaczony jest przycisk potwierdzający utworzenie.

Przycisk OK w oknie dialogowym Nowa baza danych, który tworzy bazę danych Edu

Wynik: Baza danych „Edu” została utworzona. Możesz rozszerzyć bazę danych „Edu”, która będzie zawierać tabele, widoki itd. Początkowo będą one puste, dopóki nie utworzysz nowych tabel, widoków itd.

Eksplorator obiektów pokazujący nowo utworzoną bazę danych Edu z pustymi folderami

Wyświetl zapytanie źródłowe: Możesz wyświetlić zapytanie źródłowe nowo utworzonej bazy danych „Edu”. Nawiguj w następujący sposób: kliknij prawym przyciskiem myszy nazwę bazy danych > Skrypt bazy danych jako > UTWÓRZ do > Okno edytora nowych zapytań.

Baza skryptów jako CREATE do nowego okna edytora zapytań w menu kontekstowym

Okno zapytania: Wygenerowany skrypt CREATE otwiera się w nowym oknie zapytania, jak pokazano poniżej.

Okno edytora zapytań wyświetlające automatycznie wygenerowany skrypt CREATE DATABASE dla Edu

Utwórz skrypt:

USE [master]
GO

CREATE DATABASE [Edu]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'Edu', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\Edu.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )
 LOG ON 
( NAME = N'Edu_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\Edu_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )

Utwórz bazę danych za pomocą T-SQL

Inną metodą jest napisanie zapytania T-SQL w celu utworzenia bazy danych, a następnie jego wykonanie. Przyjrzyjmy się najprostszemu zapytaniu T-SQL tworzącemu bazę danych.

Składnia:

CREATE DATABASE <Database_name>

zapytanie:

CREATE DATABASE [Edu_TSQL_file]

Kliknij „Wykonaj”, aby uruchomić zapytanie, jak pokazano poniżej.

Przycisk Wykonaj na pasku narzędzi SSMS służący do uruchomienia zapytania CREATE DATABASE

Wynik: Plik Edu_TSQL_file utworzony w Eksploratorze obiektów SQL można zobaczyć.

Eksplorator obiektów wyświetlający bazę danych Edu_TSQL_file utworzoną za pomocą języka Transact-SQL

Przyjrzyjmy się teraz, jak utworzyć bazę danych z jawnymi plikami .mdf i .ldf. W tym przypadku możesz podać lokalizację pliku jako jawną część zapytania.

Składnia:

CREATE DATABASE database_name   
[ CONTAINMENT = { NONE | PARTIAL } ]  
[ ON   
      [ PRIMARY ] <filespec> [ ,...n ]   
      [ , <filegroup> [ ,...n ] ]   
      [ LOG ON <filespec> [ ,...n ] ]   
];

zapytanie:

CREATE DATABASE [Edu_TSQL_file]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'Edu_TSQL_file', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\Edu_TSQL_file.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )
 LOG ON 
( NAME = N'Edu_TSQL_file_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\Edu_TSQL_file_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )

Baza danych utworzona z jawnymi danymi i plikami dziennika jest wyświetlana w Eksploratorze obiektów, jak pokazano poniżej.

Eksplorator obiektów pokazujący bazę danych Edu_TSQL_file utworzoną przy użyciu jawnych plików .mdf i .ldf

Jak zmienić bazę danych

Podobnie jak w przypadku zapytania CREATE DATABASE, możesz również modyfikować bazę danych. Możesz zmienić jej nazwę, lokalizację pliku lub ustawienia i nie tylko.

Podstawowe zasady modyfikacji bazy danych:

  • Polecenie ALTER DATABASE musi być uruchamiane w trybie automatycznego zatwierdzania.
  • Opcja ALTER DATABASE nie jest dozwolona w transakcji jawnej lub ukrytej.

Istnieją dwa sposoby modyfikacji bazy danych w programie SQL Server:

  • SQL Server Management Studio
  • Transakcyjny SQL

Jak zmienić bazę danych w SQL Server Management Studio

Poniżej przedstawiono kroki modyfikacji bazy danych w SQL Server Management Studio. Spróbujmy zmienić nazwę naszej wstępnie utworzonej bazy danych na „Edu”. Wstępnie utworzona baza danych Edu jest pokazana poniżej w Eksploratorze obiektów.

Wstępnie utworzona baza danych Edu wybrana na liście baz danych Eksploratora obiektów

Krok 1) Zmień nazwę bazy danych. Kliknij prawym przyciskiem myszy nazwę bazy danych i kliknij „Zmień nazwę”.

Kliknij prawym przyciskiem myszy w menu kontekstowym bazy danych Edu i wybierz opcję Zmień nazwę

Krok 2) Nazwa bazy danych staje się edytowalna. Wprowadź nową nazwę i naciśnij Enter.

Edytowalne pole nazwy bazy danych Edu gotowe na nową nazwę

Wynik: Baza danych została przemianowana z „Edu” na „Edu_Alter”.

Eksplorator obiektów pokazujący bazę danych zmienioną z Edu na Edu_Alter

Zmień bazę danych za pomocą języka Transact-SQL

Teraz zmodyfikujemy bazę danych korzystając z języka T-SQL.

Składnia:

ALTER DATABASE <Databse_name>              
MODIFY NAME = <New Name>

zapytanie:

ALTER DATABASE Edu_TSQL
MODIFY NAME = Edu_TSQL_Alter;

Uruchom powyższe zapytanie, klikając „Wykonaj”.

Wynik: Nazwę bazy danych zmieniono z „Edu_TSQL” na „Edu_TSQL_Alter”, jak pokazano poniżej.

Eksplorator obiektów pokazujący bazę danych zmienioną na Edu_TSQL_Alter po poleceniu ALTER DATABASE

Ogólna składnia: Pełna składnia polecenia ALTER DATABASE obsługuje wiele opcji, w tym zmianę nazw, sortowanie, opcje plików i poziom zgodności.

ALTER DATABASE { database_name  | CURRENT }  
{   MODIFY NAME = new_database_name   
  | COLLATE collation_name  
  | <file_and_filegroup_options>  
  | SET <option_spec> [ ,...n ] [ WITH <termination> ] 
  | SET COMPATIBILITY_LEVEL = { 140 | 130 | 120 | 110 | 100 | 90 }   
} ;

Uwaga: Przedstawione powyżej poziomy zgodności odzwierciedlają starsze wersje. Aktualne wersje dodają 150 (SQL Server 2019), 160 (SQL Server 2022) i 170 (SQL Server 2025), jednocześnie obsługując kilka wcześniejszych poziomów.

Zmiana nazwy pliku .mdf/.ldf

zapytanie:

Alter DATABASE Edu_TSQL_Alter;
MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );

Zmieniona nazwa pliku logicznego jest widoczna we właściwościach bazy danych, jak pokazano poniżej.

Właściwości bazy danych potwierdzające zmianę nazwy pliku logicznego Edu_TSQL_newName

Zmiana lokalizacji pliku .mdf/.ldf

zapytanie:

Alter DATABASE Edu_TSQL_Alter;
MODIFY FILE ( NAME = Edu_TSQL_NewName, FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.SQL_MS\MSSQL\DATA\New_File\Edu_TSQL_log.ldf' );

Poniżej pokazano zaktualizowaną ścieżkę dostępu do bazy danych.

Strona pliku bazy danych pokazująca nową lokalizację pliku dziennika .ldf

Usuń bazę danych

Istnieją dwa sposoby usunięcia (usuwania) bazy danych w programie SQL Server:

  • SQL Server Management Studio
  • Transakcyjny SQL

Jak usunąć bazę danych w SQL Server Management Studio

Poniżej przedstawiono proces usuwania bazy danych w SQL Server Management Studio. Spróbujmy usunąć naszą predefiniowaną bazę danych „Edu_Alter”.

Krok 1) Kliknij prawym przyciskiem myszy bazę danych, kliknij „Usuń”, a następnie kliknij „OK”.

Okno dialogowe usuwania obiektu w celu upuszczeniaping baza danych Edu_Alter w SSMS

Wynik: „Edu_Alter” został usunięty z listy bazy danych „Object Explorer”.

Lista baz danych Object Explorer po usunięciu bazy danych Edu_Alter

Usuń bazę danych przy użyciu języka Transact-SQL

Spróbujmy usunąć naszą wcześniej utworzoną bazę danych „Edu_TSQL_Alter”.

Składnia:

DROP DATABASE <Databse_name>

zapytanie:

USE master;  
GO  
DROP DATABASE Edu_TSQL_Alter;  
GO

Uruchom powyższe zapytanie, klikając „Wykonaj”.

Wynik: Pozycja „Edu_TSQL_Alter” została usunięta z listy baz danych „Object Explorer”, jak pokazano poniżej.

Lista baz danych Object Explorer po usunięciu bazy danych Edu_TSQL_Alter za pomocą T-SQL

Przywróć bazę danych w SQL Server

Możesz utworzyć bazę danych, przywracając bazę danych, której kopię zapasową utworzono wcześniej. Można to zrobić, uruchamiając polecenie RESTORE DATABASE o następującej składni:

restore Database <database name> from disk = '<Backup file location + filename>

Zapytanie należy wykonać w oknie zapytania, tak jak poprzednie polecenia. Na przykład:

restore database Edu from disk = 'C:\Backup\Edu_full_backup.bak'

Można również skorzystać z nawigacji graficznej: Kliknij prawym przyciskiem myszy Bazę danych > Przywróć bazę danych > Urządzenie > zaimportuj plik kopii zapasowej > kliknij OK.

FAQ

Utworzenie bazy danych wymaga uprawnienia CREATE DATABASE, CREATE ANY DATABASE lub ALTER ANY DATABASE w bazie danych master. Wymagana jest rola serwera sysadmin lub dbcreator albo odpowiednio udzielona. Zaloguj Się, można uruchomić instrukcję.

Pojedyncza instancja SQL Server może pomieścić do 32 767 baz danych. Ta liczba stanowi sztywne ograniczenie architektoniczne; w praktyce, ze względu na obciążenie pamięci, pamięci masowej i administracyjne, dla uzyskania dobrej wydajności zaleca się znacznie mniejsze liczby.

Nie. Bazy danych systemowych, takie jak master, model, msdb, tempdb i resource, są wymagane przez silnik i nie można ich usunąć. Tylko bazy danych użytkowników utworzone przez użytkownika można usunąć za pomocą polecenia DROP DATABASE lub opcji Delete.

Parametr SIZE określa początkowy rozmiar pliku, parametr MAXSIZE określa maksymalny rozmiar, jaki może osiągnąć plik, a parametr FILEGROWTH określa, ile miejsca jest dodawane przy każdym rozszerzeniu pliku. Parametr ten dotyczy zarówno plików danych, jak i plików dziennika.

COMPATIBILITY_LEVEL kontroluje, jakiego zachowania przetwarzania zapytań używa baza danych. Aktualne wartości to 140 (SQL Server 2017), 150 (2019), 160 (2022) i 170 (2025). Polecenie ALTER DATABASE SET COMPATIBILITY_LEVEL zmienia to zachowanie bez przenoszenia bazy danych na nowy serwer.

DROP DATABASE trwale usuwa bazę danych oraz jej pliki .mdf i .ldf. Wyłączanie bazy danychLINE zatrzymuje dostęp tylko wtedy, gdy pliki pozostają na dysku, dzięki czemu można je później przywrócić online bez konieczności przywracania.

Tak. Drugi pilot GitHub Potrafi tworzyć polecenia CREATE DATABASE, ALTER DATABASE i DROP DATABASE z poziomu komunikatów w języku naturalnym w programie SSMS lub edytorze. Zawsze sprawdzaj ścieżki, rozmiary i opcje wygenerowanych plików przed uruchomieniem ich na prawdziwym serwerze.

Sztuczna inteligencja i uczenie maszynowe wspomagają provisioning poprzez rekomendowanie rozmiarów plików i ustawień wzrostu, prognozowanie pojemności, wykrywanie odchyleń konfiguracji i sygnalizowanie ryzykownych operacji DROP lub ALTER. Wspierają administratora bazy danych, zamiast zastępować staranną kontrolę.

Podsumuj ten post następująco: