Database SQL Server: crea, modifica, rilascia, ripristina

Sommario:

Anonim

Cos'è il database?

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

Considera un con alcuni esempi nella vita reale:

  • Abbiamo Libreria dove risiede Libri,
  • Abbiamo case dove viviamo,
  • Abbiamo parcheggi dove sono parcheggiati i veicoli e gli esempi sono innumerevoli.

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

Tecnicamente, il database archivia 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 vengano eseguiti correttamente. Esempi di database di sistema di SQL Server includono: Master, MSDB, Model, Tempdb, Resource
  2. Database utente: i database utente vengono creati dagli utenti del database come te a cui è stato concesso l'accesso per creare database

In questo tutorial imparerai:

  • Regole per creare un database
  • Crea database utilizzando SQL Server Management Studio
  • Crea database con T-SQL
  • Modifica database con SQL Server Management Studio
  • Modifica database con Transact-SQL
  • Elimina database SQL Server Management Studio
  • Elimina database utilizzando Transact-SQL
  • Ripristina database

Regole per creare un database

Innanzitutto, dobbiamo conoscere le regole di 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à di commit automatico.

Esistono 2 modi per creare database in SQL server.

  1. SQL Server Management Studio
  2. Transact-SQL

Crea database utilizzando SQL Server Management Studio

Passaggio 1) Fare clic con il pulsante destro del mouse su "Database" dalla finestra "Esplora oggetti", quindi selezionare "Nuovo database".

Passaggio 2) Verrà visualizzata la schermata "Nuovo database". Immettere "Nome database". Si noti che: la colonna "Nome logico" verrà compilata automaticamente con:

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

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

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

Passaggio 4) Fare clic su "Aggiungi".

Risultato: database "Edu" creato.

Possiamo espandere Database - "Edu" che conterrà tabelle, viste, ecc. Inizialmente sono vuote finché l'utente non crea una nuova tabella, 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 su Nome database> Database script come> CREA in> Nuova finestra dell'editor di query.

Finestra delle query:

Crea script:

USE [master]GOCREATE DATABASE [Edu]CONTAINMENT = NONEON 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 nello scrivere la query T-SQL per creare un database ed eseguirla.

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

Sintassi:

CREATE DATABASE 

Query:

CREATE DATABASE [Edu_TSQL_file]

Fare clic su "Esegui"

Risultato: possiamo vedere Edu_TSQL creato in SQL Object Explorer.

Diamo un'occhiata 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 ]  [ ,… n ][ ,  [ ,… n ] ][ LOG ON  [ ,… n ] ]];

Query:

CREATE DATABASE [Edu_TSQL_file]CONTAINMENT = NONEON 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 )

Come modificare il database

Come Crea query 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 modificare un nuovo DB:

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

Esistono 2 modi per modificare il database in SQL Server.

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

Modifica database con SQL Server Management Studio

Proviamo ad alterare il nome del nostro database pre-creato "Edu".

Passaggio 1) Fare clic con il pulsante destro del mouse sul nome del database. Fare clic su "Rinomina".

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

Risultato: il database è ora rinominato come "Edu_Alter" da "Edu".

Modifica database con Transact-SQL

Ora alteriamo il database usando T-SQL

Sintassi:

ALTER DATABASE MODIFY NAME = 

Query:

ALTER DATABASE Edu_TSQLMODIFY NAME = Edu_TSQL_Alter;

Eseguire la query precedente facendo clic su "Esegui".

Risultato: il database è ora rinominato come "Edu_TSQL_Alter" da "Edu_TSQL".

Sintassi generale:

ALTER DATABASE { database_name | CURRENT }{ MODIFY NAME = new_database_name| COLLATE collation_name| | SET  [ ,… n ] [ WITH  ]| 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 );

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

Elimina database

Esistono 2 modi per eliminare il database in SQL Server.

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

Elimina database SQL Server Management Studio

Proviamo a eliminare il nostro database pre-creato "Edu_Alter".

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

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

Elimina database utilizzando Transact-SQL

Proviamo a eliminare il nostro database pre-creato "Edu_TSQL_Alter".

Sintassi:

DROP DATABASE  

Query:

USE master;GODROP DATABASE Edu_TSQL_Alter;GO

Esegui la query precedente facendo clic su "Esegui".

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

Ripristina database

È possibile creare un database ripristinando un database di cui è stato eseguito il backup in precedenza. Può essere eseguito eseguendo il comando di ripristino del database che assume la seguente sintassi:

restore Database  from disk = '

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

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

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

Sommario:

  • Possiamo usare sia la GUI di gestione SQL che T-SQL per eseguire tutte e tre le operazioni; Crea, modifica ed elimina database.
  • È possibile specificare un massimo di 32.767 database in un'istanza di SQL Server.
  • 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 le maiuscole che le minuscole come sintassi.