Database SQL Server: crea, modifica ed elimina database in SQL

Cos'è il database?

Un database è una raccolta di oggetti come tabelle, viste, procedure memorizzate, trigger, funzioni, ecc.

Consideriamolo con alcuni esempi nella vita reale:

  • Abbiamo una libreria dove risiedono i libri,
  • Abbiamo case dove viviamo,
  • Disponiamo di parcheggi dove sono parcheggiati i veicoli e gli esempi sono innumerevoli.

Allo stesso modo, abbiamo DATABASE che è una sorta di casa per tutte le nostre tabelle, viste, procedure memorizzate, ecc. Che sono interconnesse.

Tecnicamente, il database memorizza i dati in modo ben organizzato per un facile accesso e recupero. In SQL Server, esistono due tipi di database:

  1. Database di sistema: i database di sistema vengono creati automaticamente quando si installa SQL Server. Svolgono un ruolo cruciale nel server, soprattutto nel garantire che gli oggetti del database funzionino correttamente. Esempi di database di sistema SQL Server includono: Master, MSDB, Modello, Tempdb, Risorsa
  2. Database utenti: I database utente vengono creati dagli utenti del database come te a cui è stato concesso l'accesso per creare database

Regole per creare un database

Per prima cosa dobbiamo conoscere le regole base per la creazione di un nuovo DB:

  • I nomi dei database devono essere univoci all'interno di un'istanza di SQL Server.
  • I nomi dei database possono contenere un massimo di 128 caratteri.
  • L'istruzione CREATE DATABASE deve essere eseguita in modalità commit automatico.
Regole per creare un database
Regole per creare un database

Esistono 2 modi per creare un database nel server SQL.

  1. SQL Server Management Studio
  2. Transazioni SQL

Come creare un database in SQL Server Management Studio

Ecco una procedura passo passo per creare un database Studio di gestione del server SQL:

Passo 1) Fare clic con il tasto destro su "Database" dalla finestra "Esplora oggetti", quindi selezionare "Nuovo database".

Creare un database in SQL Server Management Studio

Passo 2) Sotto verrà visualizzata la schermata "Nuovo database". Inserisci "Nome database". Tieni presente che: la colonna "Nome logico" verrà compilata automaticamente con:

  1. Edu | Tipi di file: righe e filegroup: PRIMARY
  2. Edu_log | Tipi di file: LOG e filegroup: "Non applicabile"

Creare un database in SQL Server Management Studio

Qui:

A) Edu | Tipi di file: righe e filegroup: PRIMARY è un file .mdf

B) Edu_log | Tipi di file: LOG e filegroup: "Non applicabile" è un file .ldf

Passo 3) (Facoltativo) Per impostazioni più complesse, possiamo andare su "Opzioni" e "Filegroup". A livello principiante, sarà sufficiente creare un database dalla scheda Generale.

Creare un database in SQL Server Management Studio

Passo 4) Fare clic su "Aggiungi".

Creare un database in SQL Server Management Studio

Risultato: Creato il database "Edu".

Creare un database in SQL Server Management Studio

Possiamo espandere il database - "Edu" che conterrà tabelle, viste, ecc. Queste sono inizialmente vuote finché l'utente non crea nuove tabelle, viste, ecc.

Visualizza la query di origine:

È possibile visualizzare la query di origine del database "Edu" appena creato come: Navigazione: fare clic con il pulsante destro del mouse sul nome del database> Database script come> CREA in> Nuova finestra dell'editor di query.

Creare un database in SQL Server Management Studio

Finestra di interrogazione:

Creare un database in SQL Server Management Studio

Crea sceneggiatura:

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 database con T-SQL

Un altro metodo consiste nel scrivere la query T-SQL in Crea un database ed eseguirla.

Diamo un'occhiata alla maggior parte delle query T-SQL per la creazione di database semplici.

Sintassi:

CREATE DATABASE <Database_name>

Query:

CREATE DATABASE [Edu_TSQL_file]

Fare clic su "Esegui"

Crea database con T-SQL

Risultato: Possiamo vedere Edu_TSQL creato in SQL Object Explorer.

Crea database con T-SQL

Diamo un'occhiata a quando vogliamo creare un database con file .mdf e .ldf. Qui possiamo fornire la posizione come parte implicita della nostra query.

Sintassi:

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

Query:

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 )

Crea database con T-SQL

Come modificare il database

Come Crea query sul database, possiamo anche modificare il database. Possiamo rinominare il nome del database, modificare la posizione e l'impostazione del file, ecc.

Regole di base per la modifica di un nuovo DB:

  • L'istruzione ALTER DATABASE deve essere eseguita in modalità commit automatico.
  • ALTER DATABASE non è consentito in una transazione esplicita o implicita.

Esistono 2 modi per modificare il database nel server SQL.

  1. SQL Server Management Studio
  2. Transact-SQL.

Come modificare il database in SQL Server Management Studio

Di seguito sono riportati i passaggi per modificare il database in SQL Server Management Studio:

Proviamo a modificare il nome del nostro database pre-creato "Edu".

Modificare il database in SQL Server Management Studio

Passaggio 1) Rinominare il database

Fare clic con il tasto destro sul nome del database. Fare clic su "Rinomina".

Modificare il database in SQL Server Management Studio

Passaggio 2) Immettere il nuovo nome del database

Il nome del database sarà modificabile. Immettere il nuovo nome e premere Invio.

Modificare il database in SQL Server Management Studio

Risultato: Il database è ora rinominato "Edu_Alter" da "Edu".

Modificare il database in SQL Server Management Studio

Modificare il database con Transact-SQL

Ora modifichiamo il database utilizzando T-SQL

Sintassi:

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

Query:

ALTER DATABASE Edu_TSQL
MODIFY NAME = Edu_TSQL_Alter;

Eseguire la query precedente facendo clic su "Esegui".

Risultato: Il database è ora rinominato "Edu_TSQL_Alter" da "Edu_TSQL".

Modificare il database con Transact-SQL

Sintassi generale:

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

Modifica del nome del file .mdf/.ldf

Query:

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

Modificare il database con Transact-SQL

Modifica del percorso del file .mdf/.ldf

Query:

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

Modificare il database con Transact-SQL

Elimina database

Esistono 2 modi per eliminare il database nel server SQL.

  1. SQL Server Management Studio
  2. Transact-SQL.

Come eliminare il database in SQL Server Management Studio

Di seguito è riportato il processo per eliminare un database in SQL Server Management Studio:

Proviamo a eliminare il nostro database precreato "Edu_Alter".

Passo 1) Fare clic con il pulsante destro del mouse su Database. Fare clic su "Elimina" e quindi su "OK".

Eliminare il database in SQL Server Management Studio

Risultato: 'Edu_Alter' viene eliminato dall'elenco dei database 'Esplora oggetti'.

Eliminare il database in SQL Server Management Studio

Elimina il database utilizzando Transact-SQL

Proviamo a eliminare il nostro database precreato "Edu_TSQL_Alter".

Sintassi:

DROP DATABASE <Databse_name>

Query:

USE master;  
GO  
DROP DATABASE Edu_TSQL_Alter;  
GO

Esegui la query precedente facendo clic su "Esegui".

Risultato: "Edu_TSQL_Alter" viene eliminato dall'elenco dei database "Esplora oggetti".

Elimina il database utilizzando Transact-SQL

Ripristina il database in SQL Server

Puoi creare un database ripristinando un database di cui hai eseguito il backup in precedenza. Puoi farlo eseguendo il comando restore database che ha la seguente sintassi:

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

La query deve essere eseguita all'interno della finestra di query proprio come il comando precedente. Per esempio:

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

È inoltre possibile utilizzare la navigazione della GUI: fare clic con il pulsante destro del mouse su Database>Ripristina database>Dispositivo> Importa file>Fare clic su OK.

Sommario

  • Possiamo utilizzare sia la GUI di gestione SQL che T-SQL per eseguire tutte e tre le operazioni; Crea, modifica ed elimina database.
  • In un'istanza di SQL Server è possibile specificare un massimo di 32,767 database.
  • I database di sistema non possono essere eliminati.
  • Crea, modifica e rilascia: tutte le operazioni non fanno distinzione tra maiuscole e minuscole. Possiamo usare sia maiuscole che minuscole come sintassi.