SQL Server baza podataka: stvaranje, mijenjanje, brisanje i vraćanje

⚡ Pametni sažetak

SQL Server baze podataka su spremnici koji sadrže tablice, prikaze, pohranjene procedure i druge objekte. Stvaranje, mijenjanje, brisanjeping, a vraćanje baze podataka može se izvršiti putem SQL Server Management Studija ili pomoću Transact-SQL naredbi.

  • 🗄️ Baza podataka: SQL Server baza podataka pohranjuje tablice, prikaze, procedure i funkcije u jednom organiziranom, međusobno povezanom spremniku.
  • 🧩 Sustav u odnosu na korisnika: Sistemske baze podataka (master, msdb, model, tempdb, resource) instaliraju se automatski; korisničke baze podataka kreirate vi.
  • 🖱️ Stvoriti: Dodajte bazu podataka putem dijaloga Nova baza podataka u Exploreru objekata ili pomoću naredbe CREATE DATABASE.
  • ✏️ Dob: Preimenujte bazu podataka ili promijenite njezine datoteke i opcije pomoću naredbe ALTER DATABASE ili izbornika Rename.
  • 🗑️ Pad: Uklonite korisničku bazu podataka pomoću naredbe DROP DATABASE ili opcije Izbriši; sistemske baze podataka ne mogu se izbrisati.
  • 💾 Vratiti: Ponovno izgradite bazu podataka iz .bak datoteke sigurnosne kopije pomoću naredbe RESTORE DATABASE.

Stvaranje, mijenjanje, brisanje i vraćanje baze podataka SQL Servera

Što je baza podataka?

Baza podataka je skup objekata kao što su tablice, prikazi, pohranjene procedure, okidači i funkcije. U SQL Server, baza podataka je organizirani dom u kojem su pohranjeni i međusobno povezani svi ovi povezani objekti.

Razmotrimo nekoliko primjera iz stvarnog života:

  • Polica za knjige je mjesto gdje se nalaze knjige.
  • Dom je mjesto gdje živimo.
  • Parkiralište je mjesto gdje su parkirana vozila, a takvi primjeri su bezbrojni.

Slično tome, baza podataka je svojevrsni dom za sve naše tablice, prikaze i pohranjene procedure. Tehnički, baza podataka pohranjuje podatke na dobro organiziran način radi lakšeg pristupa i dohvaćanja. U SQL Serveru postoje dvije vrste baza podataka:

  • Sistemske baze podataka: Oni se automatski stvaraju kada instalirate SQL Server. Igraju ključnu ulogu u poslužitelju, posebno u osiguravanju ispravnog pokretanja objekata baze podataka. Primjeri sistemskih baza podataka SQL Servera uključuju master, msdb, model, tempdb i resource.
  • Korisničke baze podataka: Njih stvaraju korisnici baza podataka poput vas, kojima je odobren pristup za stvaranje baza podataka.

Pravila za stvaranje baze podataka

Prvo, morate znati osnovna pravila za stvaranje nove baze podataka:

  • Nazivi baza podataka moraju biti jedinstveni unutar instance SQL Servera.
  • Nazivi baza podataka mogu imati najviše 128 znakova.
  • Naredba CREATE DATABASE mora se izvršavati u načinu rada s automatskim potvrđivanjem (auto-commit).

Donja slika prikazuje dva dostupna pristupa za stvaranje baze podataka u SQL Serveru.

Dva načina za stvaranje SQL Server baze podataka: Management Studio i Transact-SQL

Postoje dva načina za stvaranje baze podataka u SQL Serveru:

Kako stvoriti bazu podataka u SQL Server Management Studio

Evo korak-po-korak postupka za stvaranje baze podataka u SQL Server Management Studiu:

Korak 1) Desnom tipkom miša kliknite na 'Baza podataka' u prozoru 'Istraživač objekata' i zatim odaberite 'Nova baza podataka'.

Izbornik s opcijom Nova baza podataka prikazan je dolje, a pojavljuje se klik desnom tipkom miša.

Desni klik na izbornik na čvoru Baza podataka u Object Exploreru s odabranom opcijom Nova baza podataka

Korak 2) Pojavit će se zaslon 'Nova baza podataka'. Unesite 'Naziv baze podataka'. Stupac 'Logički naziv' automatski se popunjava s:

  • Edu – Vrsta datoteke: Redci podataka i Grupa datoteka: PRIMARNA
  • Edu_log – Vrsta datoteke: LOG i Grupa datoteka: 'Nije primjenjivo'

Dijalog Nova baza podataka s nazivom baze podataka i njezinim logičkim datotekama prikazan je dolje.

Dijalog novog sustava baze podataka koji prikazuje naziv Edu baze podataka te logičke datoteke Edu i Edu_log

Ovdje:

  • A) Edu (vrsta datoteke: Rows Data, Filegroup: PRIMARY) je .mdf podatkovna datoteka.
  • B) Edu_log (Vrsta datoteke: LOG, Grupa datoteka: 'Nije primjenjivo') je .ldf datoteka zapisnika.

Korak 3) (Neobavezno) Za složenije postavke možete otići na stranice 'Opcije' i 'Grupe datoteka'. Na početnoj razini, dovoljno će biti stvaranje baze podataka s kartice Općenito.

Stranice Opcije i Grupe datoteka prikazane su u nastavku.

Nove stranice s opcijama baze podataka i grupama datoteka za napredne postavke

Korak 4) Kliknite na 'Dodaj' (gumb U redu) za izradu baze podataka.

Gumb koji potvrđuje stvaranje istaknut je dolje.

Gumb U redu u dijalogu Nova baza podataka koji stvara Edu bazu podataka

Rezultat: Baza podataka 'Edu' je kreirana. Možete proširiti bazu podataka 'Edu' koja će sadržavati tablice, prikaze itd. Oni su u početku prazni dok ne kreirate nove tablice, prikaze itd.

Object Explorer koji prikazuje novostvorenu Edu bazu podataka s praznim mapama

Pogledajte izvorni upit: Možete vidjeti izvorni upit novostvorene baze podataka 'Edu'. Navigacija je sljedeća: Desnom tipkom miša kliknite naziv baze podataka > Skriptiraj bazu podataka kao > STVORI U > Novi prozor za uređivanje upita.

Skriptiraj bazu podataka kao STVORI u kontekstni izbornik novog prozora uređivača upita

Prozor upita: Generirana CREATE skripta otvara se u novom prozoru upita, kao što je prikazano dolje.

Prozor za uređivanje upita koji prikazuje automatski generiranu skriptu CREATE DATABASE za Edu

Stvori skriptu:

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 )

Stvorite bazu podataka pomoću T-SQL-a

Druga metoda je pisanje T-SQL upita za stvaranje baze podataka, a zatim njegovo izvršavanje. Pogledajmo najjednostavniji T-SQL upit za stvaranje baze podataka.

Sintaksa:

CREATE DATABASE <Database_name>

upita:

CREATE DATABASE [Edu_TSQL_file]

Kliknite na 'Izvrši' za pokretanje upita, kao što je prikazano dolje.

Gumb Izvrši u alatnoj traci SSMS-a koji se koristi za pokretanje upita STVORI BAZU PODATAKA

Rezultat: Možete vidjeti kreiranu Edu_TSQL_file datoteku u SQL Object Exploreru.

Object Explorer koji navodi bazu podataka Edu_TSQL_file stvorenu pomoću Transact-SQL-a

Sada pogledajmo kako stvoriti bazu podataka s eksplicitnim .mdf i .ldf datotekama. Ovdje možete navesti lokaciju datoteke kao eksplicitni dio upita.

Sintaksa:

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

upita:

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 podataka stvorena s eksplicitnim podacima i datotekama zapisnika pojavljuje se u Object Exploreru, kao što je prikazano u nastavku.

Object Explorer koji prikazuje Edu_TSQL_file bazu podataka stvorenu s eksplicitnim .mdf i .ldf datotekama

Kako promijeniti bazu podataka

Kao i kod upita CREATE DATABASE, možete i mijenjati bazu podataka. Možete preimenovati bazu podataka, promijeniti lokaciju datoteke ili postavku i još mnogo toga.

Osnovna pravila za mijenjanje baze podataka:

  • Naredba ALTER DATABASE mora se izvršavati u načinu rada s automatskim potvrđivanjem (auto-commit).
  • ALTER DATABASE nije dopušten u eksplicitnoj ili implicitnoj transakciji.

Postoje dva načina za promjenu baze podataka u SQL Serveru:

  • SQL Server Management Studio
  • Transact SQL

Kako promijeniti bazu podataka u SQL Server Management Studio

U nastavku su navedeni koraci za promjenu baze podataka u SQL Server Management Studiju. Pokušajmo promijeniti naziv naše unaprijed stvorene baze podataka 'Edu'. Unaprijed stvorena Edu baza podataka prikazana je dolje u Object Exploreru.

Unaprijed stvorena Edu baza podataka odabrana na popisu baza podataka Object Explorera

Korak 1) Preimenuj bazu podataka. Desnom tipkom miša klikni na naziv baze podataka i klikni na 'Preimenuj'.

Kontekstni izbornik desnom tipkom miša na Edu bazi podataka s opcijom Preimenuj

Korak 2) Naziv baze podataka postaje moguće uređivati. Unesite novi naziv i pritisnite Enter.

Polje naziva Edu baze podataka koje se može uređivati ​​spremno je za novi naziv

Rezultat: Baza podataka je sada preimenovana u „Edu_Alter“ iz „Edu“.

Object Explorer koji prikazuje bazu podataka preimenovanu iz Edu u Edu_Alter

Promijenite bazu podataka s Transact-SQL

Sada promijenimo bazu podataka koristeći T-SQL.

Sintaksa:

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

upita:

ALTER DATABASE Edu_TSQL
MODIFY NAME = Edu_TSQL_Alter;

Pokrenite gornji upit klikom na 'Izvrši'.

Rezultat: Baza podataka je sada preimenovana iz 'Edu_TSQL' u “Edu_TSQL_Alter”, kao što je prikazano dolje.

Preglednik objekata koji prikazuje bazu podataka preimenovanu u Edu_TSQL_Alter nakon ALTER DATABASE

Opća sintaksa: Puna sintaksa naredbe ALTER DATABASE podržava mnoge opcije, uključujući preimenovanje, sređivanje, opcije datoteka i razinu kompatibilnosti.

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 }   
} ;

Bilješka: Prikazane razine kompatibilnosti odražavaju starija izdanja. Trenutne verzije dodaju 150 (SQL Server 2019), 160 (SQL Server 2022) i 170 (SQL Server 2025), a i dalje podržavaju nekoliko ranijih razina.

Promjena naziva .mdf/.ldf datoteke

upita:

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

Preimenovana logička datoteka odražava se u svojstvima baze podataka, kao što je prikazano u nastavku.

Svojstva baze podataka koja potvrđuju preimenovanu logičku datoteku Edu_TSQL_newName

Promjena lokacije .mdf/.ldf datoteke

upita:

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' );

Ažurirana putanja datoteke za bazu podataka prikazana je u nastavku.

Stranica datoteke baze podataka koja prikazuje novu lokaciju .ldf datoteke zapisnika

Izbriši bazu podataka

Postoje dva načina za brisanje (ispuštanje) baze podataka u SQL Serveru:

  • SQL Server Management Studio
  • Transact SQL

Kako ispustiti bazu podataka u SQL Server Management Studio

Slijedi postupak brisanja baze podataka u SQL Server Management Studiju. Pokušajmo izbrisati našu prethodno stvorenu bazu podataka 'Edu_Alter'.

Korak 1) Desnom tipkom miša kliknite na bazu podataka, kliknite na 'Izbriši', a zatim kliknite na 'U redu'.

Dijalog za brisanje objekta za ispuštanjeping baza podataka Edu_Alter u SSMS-u

Rezultat: 'Edu_Alter' je izbrisan s popisa baze podataka 'Object Explorer'.

Popis baze podataka Object Explorera nakon brisanja baze podataka Edu_Alter

Izbrišite bazu podataka koristeći Transact-SQL

Pokušajmo izbrisati našu prethodno kreiranu bazu podataka 'Edu_TSQL_Alter'.

Sintaksa:

DROP DATABASE <Databse_name>

upita:

USE master;  
GO  
DROP DATABASE Edu_TSQL_Alter;  
GO

Pokrenite gornji upit klikom na 'Izvrši'.

Rezultat: 'Edu_TSQL_Alter' je izbrisan s popisa baze podataka 'Object Explorer', kao što je prikazano u nastavku.

Popis baze podataka Object Explorera nakon što je baza podataka Edu_TSQL_Alter izbrisana pomoću T-SQL-a

Vratite bazu podataka u SQL Server

Bazu podataka možete stvoriti vraćanjem baze podataka za koju ste prethodno napravili sigurnosnu kopiju. To se može učiniti pokretanjem naredbe RESTORE DATABASE, koja ima sljedeću sintaksu:

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

Upit treba izvršiti unutar prozora upita, baš kao i prethodne naredbe. Na primjer:

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

Također možete koristiti navigaciju putem grafičkog korisničkog sučelja: Desnom tipkom miša kliknite na Baza podataka > Vrati bazu podataka > Uređaj > uvezi datoteku sigurnosne kopije > kliknite U redu.

Pitanja i odgovori

Za stvaranje baze podataka potrebna je dozvola CREATE DATABASE, CREATE ANY DATABASE ili ALTER ANY DATABASE u glavnoj bazi podataka. Član poslužiteljske uloge sysadmin ili dbcreator ili odgovarajuće dodijeljena prijava, može pokrenuti naredbu.

Jedna instanca SQL Servera može sadržavati do 32 767 baza podataka. Ta je brojka strogo arhitektonsko ograničenje; u praksi, memorijski, administrativni i opterećeni resursi čine daleko manje brojeve preporučljivima za dobre performanse.

Ne. Sistemske baze podataka kao što su master, model, msdb, tempdb i resource potrebne su mehanizmu i ne mogu se izbrisati. Samo korisničke baze podataka koje kreirate mogu se izbrisati pomoću DROP DATABASE ili opcije Izbriši.

SIZE postavlja početnu veličinu datoteke, MAXSIZE postavlja najveću veličinu do koje datoteka može narasti, a FILEGROWTH postavlja koliko se prostora dodaje svaki put kada se datoteka proširi. Primjenjuju se i na podatkovne i na zapisničke datoteke.

COMPATIBILITY_LEVEL kontrolira koje ponašanje obrade upita baza podataka koristi. Trenutne vrijednosti uključuju 140 (SQL Server 2017), 150 (2019), 160 (2022) i 170 (2025). ALTER DATABASE SET COMPATIBILITY_LEVEL mijenja ga bez premještanja baze podataka na novi poslužitelj.

DROP DATABASE trajno briše bazu podataka i njezine .mdf i .ldf datoteke. Uklanjanje baze podatakaLINE zaustavlja pristup samo dok datoteke ostaju na disku, tako da ga kasnije možete vratiti na mrežu bez vraćanja.

Da. GitHub kopilot Možete skicirati naredbe CREATE DATABASE, ALTER DATABASE i DROP DATABASE iz upita na prirodnom jeziku unutar SSMS-a ili vašeg editora. Uvijek pregledajte generirane putanje datoteka, veličine i opcije prije nego što ih pokrenete na stvarnom poslužitelju.

Umjetna inteligencija i strojno učenje pomažu u pružanju usluga preporučujući veličine datoteka i postavke rasta, predviđajući kapacitet, uočavajući pomicanje konfiguracije i označavajući rizične operacije DROP ili ALTER. Oni podržavaju administratora baze podataka umjesto da zamjenjuju pažljiv pregled.

Sažmite ovu objavu uz: