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.

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.
Istniejฤ dwa sposoby tworzenia bazy danych w programie SQL Server:
- SQL Server Management Studio
- Transakcyjny SQL
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.
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.
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.
Krok 4) Kliknij โDodajโ (przycisk OK), aby utworzyฤ bazฤ danych.
Poniลผej zaznaczony jest przycisk potwierdzajฤ cy utworzenie.
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.
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ล.
Okno zapytania: Wygenerowany skrypt CREATE otwiera siฤ w nowym oknie zapytania, jak pokazano poniลผej.
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.
Wynik: Plik Edu_TSQL_file utworzony w Eksploratorze obiektรณw SQL moลผna zobaczyฤ.
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.
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.
Krok 1) Zmieล nazwฤ bazy danych. Kliknij prawym przyciskiem myszy nazwฤ bazy danych i kliknij โZmieล nazwฤโ.
Krok 2) Nazwa bazy danych staje siฤ edytowalna. Wprowadลบ nowฤ nazwฤ i naciลnij Enter.
Wynik: Baza danych zostaลa przemianowana 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.
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.
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.
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โ.
Wynik: โEdu_Alterโ zostaล usuniฤty z listy bazy danych โObject Explorerโ.
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.
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.





















