Baze de date SQL Server: Creare, modificare, ștergere și restaurare

⚡ Rezumat inteligent

Bazele de date SQL Server sunt containere care conțin tabele, vizualizări, proceduri stocate și alte obiecte. Crearea, modificarea, eliminareapingși restaurarea unei baze de date se poate face prin SQL Server Management Studio sau cu instrucțiuni Transact-SQL.

  • 🗄️ Bază de date: O bază de date SQL Server stochează tabele, vizualizări, proceduri și funcții într-un container organizat și interconectat.
  • 🧩 Sistem vs. Utilizator: Bazele de date de sistem (master, msdb, model, tempdb, resource) se instalează automat; bazele de date ale utilizatorilor sunt create de dvs.
  • 🖱️ Crea: Adăugați o bază de date prin intermediul casetei de dialog Bază de date nouă din Exploratorul de obiecte sau cu instrucțiunea CREATE DATABASE.
  • ✏️ Modifica: Redenumiți o bază de date sau modificați fișierele și opțiunile acesteia utilizând comanda ALTER DATABASE sau meniul Rename.
  • 🗑️ Cădere brusca: Eliminați o bază de date de utilizatori cu DROP DATABASE sau opțiunea Delete; bazele de date de sistem nu pot fi eliminate.
  • 💾 Restabili: Reconstruiți o bază de date dintr-un fișier de rezervă .bak utilizând comanda RESTORE DATABASE.

Crearea, modificarea, eliminarea și restaurarea bazelor de date SQL Server

Ce este baza de date?

O bază de date este o colecție de obiecte, cum ar fi tabele, vizualizări, proceduri stocate, declanșatoare și funcții. În SQL Server, o bază de date este locul organizat în care sunt stocate și interconectate toate aceste obiecte corelate.

Luați în considerare câteva exemple din viața reală:

  • O bibliotecă este locul unde se află cărțile.
  • O casă este locul unde trăim.
  • O parcare este locul unde sunt parchezate vehiculele, iar astfel de exemple sunt nenumărate.

În mod similar, o bază de date este un fel de reședință pentru toate tabelele, vizualizările și procedurile stocate. Din punct de vedere tehnic, o bază de date stochează datele într-un mod bine organizat pentru acces și regăsire ușoară. În SQL Server, există două tipuri de baze de date:

  • Baze de date de sistem: Acestea sunt create automat la instalarea SQL Server. Ele joacă un rol crucial în server, în special în asigurarea funcționării corecte a obiectelor bazei de date. Exemple de baze de date de sistem SQL Server includ master, msdb, model, tempdb și resource.
  • Baze de date ale utilizatorilor: Acestea sunt create de utilizatori de baze de date ca tine, cărora li s-a acordat acces pentru a crea baze de date.

Reguli pentru crearea unei baze de date

În primul rând, trebuie să cunoașteți regulile de bază pentru crearea unei baze de date noi:

  • Numele bazelor de date trebuie să fie unice într-o instanță a SQL Server.
  • Numele bazelor de date pot avea maximum 128 de caractere.
  • Instrucțiunea CREATE DATABASE trebuie să ruleze în modul de validare automată.

Imaginea de mai jos prezintă cele două abordări disponibile pentru crearea unei baze de date în SQL Server.

Două metode de a crea o bază de date SQL Server: Management Studio și Transact-SQL

Există două metode de a crea o bază de date în SQL Server:

Cum se creează o bază de date în SQL Server Management Studio

Iată un proces pas cu pas pentru a crea o bază de date în SQL Server Management Studio:

Pas 1) Faceți clic dreapta pe „Bază de date” în fereastra „Explorator de obiecte” și apoi selectați „Bază de date nouă”.

Meniul deschis cu butonul din dreapta al mouse-ului cu opțiunea Bază de date nouă este afișat mai jos.

Faceți clic dreapta pe meniu pe nodul Bază de date din Exploratorul de obiecte, cu opțiunea Bază de date nouă selectată

Pas 2) Apare ecranul „Bază de date nouă”. Introduceți un „Nume pentru baza de date”. Coloana „Nume logic” este completată automat cu:

  • Edu – Tip fișier: Rânduri Date și grup fișiere: PRIMAR
  • Edu_log – Tip fișier: LOG și grup fișiere: „Nu se aplică”

Caseta de dialog Bază de date nouă, cu numele bazei de date și fișierele sale logice, este afișată mai jos.

Caseta de dialog Bază de date nouă care afișează numele bazei de date Edu și fișierele logice Edu și Edu_log

Aici:

  • A) Edu (Tip fișier: Date pe rânduri, Grup fișiere: PRIMARY) este fișierul de date .mdf.
  • B) Edu_log (Tip fișier: LOG, Grup fișiere: „Nu se aplică”) este fișierul jurnal .ldf.

Pas 3) (Opțional) Pentru setări mai complexe, puteți naviga la paginile „Opțiuni” și „Grupuri de fișiere”. La nivel de începător, crearea bazei de date din fila General va fi suficientă.

Paginile Opțiuni și Grupuri de fișiere sunt afișate mai jos.

Noi pagini Opțiuni bază de date și Grupuri de fișiere pentru setări avansate

Pas 4) Faceți clic pe „Adăugare” (butonul OK) pentru a crea baza de date.

Butonul care confirmă crearea este evidențiat mai jos.

Butonul OK din caseta de dialog Bază de date nouă care creează baza de date Edu

Rezultat: Baza de date „Edu” este creată. Puteți extinde baza de date „Edu”, care va conține tabele, vizualizări etc. Acestea sunt inițial goale până când creați tabele, vizualizări etc. noi.

Exploratorul de obiecte afișează baza de date Edu nou creată cu folderele sale goale

Vizualizați interogarea sursă: Puteți vizualiza interogarea sursă a bazei de date „Edu” nou create. Navigați după cum urmează: Faceți clic dreapta pe numele bazei de date > Script Database as > CREATE To > New Query Editor Window.

Bază de date Script ca meniu contextual al ferestrei CREATE To New Query Editor

Fereastra de interogare: Scriptul CREATE generat se deschide într-o nouă fereastră de interogare, așa cum se arată mai jos.

Fereastra editorului de interogări care afișează scriptul CREATE DATABASE generat automat pentru Edu

Creați script:

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 )

Creați o bază de date cu T-SQL

O altă metodă este de a scrie o interogare T-SQL pentru a crea o bază de date și apoi de a o executa. Să analizăm cea mai simplă interogare T-SQL pentru crearea unei baze de date.

Sintaxă:

CREATE DATABASE <Database_name>

Solicitare:

CREATE DATABASE [Edu_TSQL_file]

Faceți clic pe „Executare” pentru a rula interogarea, așa cum se arată mai jos.

Butonul Executare din bara de instrumente SSMS utilizat pentru a rula interogarea CREATE DATABASE

Rezultat: Puteți vedea fișierul Edu_TSQL_creat în SQL Object Explorer.

Object Explorer listează baza de date Edu_TSQL_file creată cu Transact-SQL

Acum să vedem cum se creează o bază de date cu fișiere .mdf și .ldf explicite. Aici, puteți specifica locația fișierului ca parte explicită a interogării.

Sintaxă:

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

Solicitare:

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 de date creată cu datele sale explicite și fișierele jurnal apare în Object Explorer, așa cum se arată mai jos.

Exploratorul de obiecte afișează baza de date Edu_TSQL_file creată cu fișiere .mdf și .ldf explicite

Cum se modifică baza de date

La fel ca interogarea CREATE DATABASE, puteți modifica și o bază de date. Puteți redenumi baza de date, modifica locația unui fișier sau o setare și multe altele.

Reguli de bază pentru modificarea unei baze de date:

  • Instrucțiunea ALTER DATABASE trebuie să ruleze în modul de validare automată.
  • ALTER DATABASE nu este permisă într-o tranzacție explicită sau implicită.

Există două metode de a modifica o bază de date în SQL Server:

  • SQL Server Management Studio
  • Transact SQL

Cum se modifică baza de date în SQL Server Management Studio

Mai jos sunt pașii pentru modificarea unei baze de date în SQL Server Management Studio. Să încercăm să modificăm numele bazei de date pre-create, „Edu”. Baza de date Edu pre-creată este afișată mai jos în Object Explorer.

Bază de date Edu precreată selectată în lista de baze de date Object Explorer

Pas 1) Redenumiți baza de date. Faceți clic dreapta pe numele bazei de date și faceți clic pe „Redenumiți”.

Faceți clic dreapta pe meniul contextual din baza de date Edu cu opțiunea Redenumire

Pas 2) Numele bazei de date devine editabil. Introduceți noul nume și apăsați Enter.

Câmp editabil pentru numele bazei de date Edu, gata pentru un nume nou

Rezultat: Baza de date este acum redenumită din „Edu” în „Edu_Alter”.

Object Explorer afișează baza de date redenumită din Edu în Edu_Alter

Modificați baza de date cu Transact-SQL

Acum să modificăm o bază de date folosind T-SQL.

Sintaxă:

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

Solicitare:

ALTER DATABASE Edu_TSQL
MODIFY NAME = Edu_TSQL_Alter;

Rulați interogarea de mai sus făcând clic pe „Execută”.

Rezultat: Baza de date este acum redenumită din „Edu_TSQL” în „Edu_TSQL_Alter”, așa cum se arată mai jos.

Object Explorer afișează baza de date redenumită în Edu_TSQL_Alter după ALTER DATABASE

Sintaxa generala: Sintaxa completă ALTER DATABASE acceptă numeroase opțiuni, inclusiv redenumirea, colaționarea, opțiunile de fișier și nivelul de compatibilitate.

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

Notă: Nivelurile de compatibilitate afișate mai sus reflectă versiunile mai vechi. Versiunile actuale adaugă 150 (SQL Server 2019), 160 (SQL Server 2022) și 170 (SQL Server 2025), deși încă acceptă mai multe niveluri anterioare.

Schimbarea numelui fișierului .mdf/.ldf

Solicitare:

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

Fișierul logic redenumit este reflectat în proprietățile bazei de date, așa cum se arată mai jos.

Proprietățile bazei de date care confirmă fișierul logic redenumit Edu_TSQL_newName

Modificarea locației fișierului .mdf/.ldf

Solicitare:

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

Calea actualizată a fișierului pentru baza de date este afișată mai jos.

Pagina cu fișierul bazei de date care afișează noua locație a fișierului jurnal .ldf

Șterge baza de date

Există două metode de a șterge (elimina) o bază de date în SQL Server:

  • SQL Server Management Studio
  • Transact SQL

Cum să aruncați baza de date în SQL Server Management Studio

Următorul este procesul de eliminare a unei baze de date în SQL Server Management Studio. Să încercăm să ștergem baza noastră de date pre-creată, „Edu_Alter”.

Pas 1) Faceți clic dreapta pe baza de date, faceți clic pe „Ștergere”, apoi faceți clic pe „OK”.

Dialogul Ștergere obiect pentru plasareping baza de date Edu_Alter în SSMS

Rezultat: „Edu_Alter” este șters din lista bazei de date „Object Explorer”.

Lista bazelor de date Object Explorer după ștergerea bazei de date Edu_Alter

Ștergeți baza de date folosind Transact-SQL

Să încercăm să ștergem baza noastră de date pre-creată „Edu_TSQL_Alter”.

Sintaxă:

DROP DATABASE <Databse_name>

Solicitare:

USE master;  
GO  
DROP DATABASE Edu_TSQL_Alter;  
GO

Rulați interogarea de mai sus făcând clic pe „Execută”.

Rezultat: „Edu_TSQL_Alter” este șters din lista bazei de date „Object Explorer”, așa cum se arată mai jos.

Lista bazelor de date Object Explorer după eliminarea bazei de date Edu_TSQL_Alter cu T-SQL

Restaurați baza de date în SQL Server

Puteți crea o bază de date prin restaurarea unei baze de date pe care ați făcut-o anterior cu o copie de rezervă. Acest lucru se poate face rulând comanda RESTORE DATABASE, care are următoarea sintaxă:

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

Interogarea ar trebui executată în fereastra de interogare, la fel ca comenzile anterioare. De exemplu:

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

De asemenea, puteți utiliza navigarea prin interfața grafică: Faceți clic dreapta pe Bază de date > Restaurare bază de date > Dispozitiv > importați fișierul de rezervă > faceți clic pe OK.

Întrebări frecvente

Crearea unei baze de date necesită permisiunile CREATE DATABASE, CREATE ANY DATABASE sau ALTER ANY DATABASE în baza de date principală. Un membru al rolului de server sysadmin sau dbcreator sau o persoană cu drepturi acordate corespunzător. Logare, poate rula instrucțiunea.

O singură instanță SQL Server poate conține până la 32,767 de baze de date. Această cifră reprezintă o limită arhitecturală strictă; în practică, memoria, stocarea și cheltuielile administrative fac ca un număr mult mai mic să fie recomandat pentru o performanță bună.

Nu. Bazele de date de sistem, cum ar fi master, model, msdb, tempdb și resource, sunt necesare pentru motor și nu pot fi eliminate. Doar bazele de date de utilizatori pe care le creați pot fi șterse cu DROP DATABASE sau cu opțiunea Delete.

SIZE setează dimensiunea inițială a fișierului, MAXSIZE setează dimensiunea maximă la care poate crește fișierul, iar FILEGROWTH setează cât spațiu este adăugat de fiecare dată când fișierul se extinde. Acestea se aplică atât fișierelor de date, cât și celor de jurnal.

COMPATIBILITY_LEVEL controlează comportamentul de procesare a interogărilor utilizat de o bază de date. Valorile actuale includ 140 (SQL Server 2017), 150 (2019), 160 (2022) și 170 (2025). ALTER DATABASE SET COMPATIBILITY_LEVEL îl modifică fără a muta baza de date pe un server nou.

DROP DATABASE șterge definitiv baza de date și fișierele sale .mdf și .ldf. Dezactivarea unei baze de dateLINE oprește accesul doar cât timp fișierele sunt lăsate pe disc, astfel încât să îl puteți readuce online mai târziu, fără o restaurare.

Da. Copilotul GitHub poate redacta instrucțiuni CREATE DATABASE, ALTER DATABASE și DROP DATABASE din prompturi în limbaj natural din SSMS sau din editor. Verificați întotdeauna căile, dimensiunile și opțiunile fișierelor generate înainte de a le rula pe un server real.

Inteligența artificială și învățarea automată ajută la furnizarea datelor prin recomandarea dimensiunilor fișierelor și a setărilor de creștere, prognozarea capacității, identificarea abaterilor de configurație și semnalarea operațiunilor DROP sau ALTER riscante. Acestea oferă sprijin administratorului bazei de date, în loc să înlocuiască revizuirea atentă.

Rezumați această postare cu: