Databáze SQL Server: Vytvářejte, upravujte a rušte databázi v SQL

Co je to databáze?

Databáze je kolekce objektů, jako jsou tabulky, pohledy, uložené procedury, spouštěče, funkce atd.

Zvažte a s několika příklady ze skutečného života:

  • Máme knihovnu, kde sídlí knihy,
  • Máme domovy, kde žijeme,
  • Máme parkoviště, kde parkují vozidla a příkladů je nespočet.

Podobně máme DATABASE, která je jakýmsi domovem pro všechny naše tabulky, pohledy, uložené procedury atd., které jsou vzájemně propojené.

Technicky databáze ukládá data dobře organizovaným způsobem pro snadný přístup a vyhledávání. v SQL Server, existují dva typy databází:

  1. Systémové databáze: Systémové databáze se automaticky vytvoří při instalaci serveru SQL. Hrají klíčovou roli na serveru, zejména při zajišťování správného chodu databázových objektů. Příklady systémových databází SQL Server zahrnují: Master, MSDB, Model, Tempdb, Resource
  2. Uživatelské databáze: Databáze uživatelů jsou vytvářeny uživateli databáze, jako jste vy, kterým byl udělen přístup k vytváření databází

Pravidla pro vytvoření databáze

Nejprve potřebujeme znát základní pravidla pro vytváření nové DB:

  • Názvy databází musí být jedinečné v rámci instance SQL Server.
  • Názvy databáze mohou mít maximálně 128 znaků.
  • Příkaz CREATE DATABASE musí být spuštěn v režimu automatického potvrzení.
Pravidla pro vytvoření databáze
Pravidla pro vytvoření databáze

Existují 2 způsoby, jak vytvořit databázi na SQL serveru.

  1. SQL Server Management Studio
  2. Transakce SQL

Jak vytvořit databázi v SQL Server Management Studio

Zde je postup vytvoření databáze krok za krokem SQL server management studio:

Krok 1) Klikněte pravým tlačítkem na 'Databáze' v okně 'Průzkumník objektů' a poté vyberte 'Nová databáze'.

Vytvořte databázi v SQL Server Management Studio

Krok 2) Níže se zobrazí obrazovka „Nová databáze“. Zadejte 'Název databáze'. Upozorňujeme, že: Sloupec 'Logický název' se automaticky vyplní:

  1. Edu | Typy souborů: Řádky a skupiny souborů: PRIMARY
  2. Edu_log | Typy souborů: LOG a skupiny souborů: 'Nepoužije se'

Vytvořte databázi v SQL Server Management Studio

Zde:

A) Edu | Typy souborů: Řádky a skupiny souborů: PRIMARY je soubor .mdf

B) Edu_log | Typy souborů: LOG a Filegroups: 'Not Applicable' je soubor .ldf

Krok 3) (Volitelné) Pro složitější nastavení můžeme přejít na 'Možnosti' a 'Skupiny souborů'. Na úrovni začátečníka postačí vytvoření databáze z karty Obecné.

Vytvořte databázi v SQL Server Management Studio

Krok 4) Klikněte na 'Přidat'.

Vytvořte databázi v SQL Server Management Studio

Výsledek: Databáze 'Edu' vytvořena.

Vytvořte databázi v SQL Server Management Studio

Můžeme rozšířit databázi – 'Edu', která bude obsahovat tabulky, pohledy atd. Tyto jsou zpočátku prázdné, dokud uživatel nevytvoří novou tabulku, pohledy atd.

Zobrazit zdrojový dotaz:

Zdrojový dotaz nově vytvořené databáze 'Edu' můžete zobrazit jako: Navigace: Klepněte pravým tlačítkem myši na Název databáze> Databáze skriptů jako> VYTVOŘIT do> Okno editoru nových dotazů.

Vytvořte databázi v SQL Server Management Studio

Okno dotazu:

Vytvořte databázi v SQL Server Management Studio

Vytvořit skript:

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 )

Vytvořte databázi pomocí T-SQL

Další metodou je napsat dotaz T-SQL pro vytvoření databáze a provést jej.

Podívejme se na většinu T-SQL dotazů Simple Database Creation.

Syntaxe:

CREATE DATABASE <Database_name>

Dotaz:

CREATE DATABASE [Edu_TSQL_file]

Klikněte na 'Execute'

Vytvořte databázi pomocí T-SQL

Výsledek: Můžeme vidět Edu_TSQL vytvořený v SQL Object Explorer.

Vytvořte databázi pomocí T-SQL

Podívejme se, když chceme vytvořit databázi se souborem .mdf a .ldf. Zde můžeme uvést umístění jako implicitní součást našeho dotazu.

Syntaxe:

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

Dotaz:

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 )

Vytvořte databázi pomocí T-SQL

Jak změnit databázi

Stejně jako Create Database Query můžeme také změnit databázi. Můžeme přejmenovat název databáze, změnit umístění a nastavení souboru atd.

Základní pravidla pro změnu nové DB:

  • Příkaz ALTER DATABASE musí být spuštěn v režimu automatického potvrzení.
  • ALTER DATABASE není povolena v explicitní nebo implicitní transakci.

Existují 2 způsoby, jak změnit databázi na serveru SQL.

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

Jak změnit databázi v SQL Server Management Studio

Níže jsou uvedeny kroky ke změně databáze v SQL Server Management Studio:

Zkusme změnit název naší předem vytvořené databáze 'Edu'.

Změňte databázi v SQL Server Management Studio

Krok 1) Přejmenujte databázi

Klikněte pravým tlačítkem na Název databáze. Klikněte na 'Přejmenovat'.

Změňte databázi v SQL Server Management Studio

Krok 2) Zadejte název nové databáze

Název databáze bude možné upravit. Zadejte nový název a stiskněte Enter.

Změňte databázi v SQL Server Management Studio

Výsledek: Databáze je nyní přejmenována na „Edu_Alter“ z „Edu“.

Změňte databázi v SQL Server Management Studio

Změňte databázi pomocí Transact-SQL

Nyní změňme databázi pomocí T-SQL

Syntaxe:

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

Dotaz:

ALTER DATABASE Edu_TSQL
MODIFY NAME = Edu_TSQL_Alter;

Spusťte výše uvedený dotaz kliknutím na 'Execute'.

Výsledek: Databáze je nyní přejmenována na „Edu_TSQL_Alter“ z „Edu_TSQL“.

Změňte databázi pomocí Transact-SQL

Obecná syntaxe:

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

Změna názvu souboru .mdf/.ldf

Dotaz:

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

Změňte databázi pomocí Transact-SQL

Změna umístění souboru .mdf/.ldf

Dotaz:

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

Změňte databázi pomocí Transact-SQL

Smazat databázi

Existují 2 způsoby, jak odstranit databázi na serveru SQL.

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

Jak zrušit databázi v SQL Server Management Studio

Následuje proces zrušení databáze v SQL Server Management Studio:

Zkusme smazat naši předem vytvořenou databázi 'Edu_Alter.'

Krok 1) Klikněte pravým tlačítkem na Databáze. Klikněte na „Odstranit“ a poté na „OK“.

Přetáhněte databázi v SQL Server Management Studio

Výsledek: 'Edu_Alter' je odstraněn ze seznamu databáze 'Object Explorer'.

Přetáhněte databázi v SQL Server Management Studio

Odstraňte databázi pomocí Transact-SQL

Zkusme smazat naši předem vytvořenou databázi 'Edu_TSQL_Alter.'

Syntaxe:

DROP DATABASE <Databse_name>

Dotaz:

USE master;  
GO  
DROP DATABASE Edu_TSQL_Alter;  
GO

Spusťte výše uvedený dotaz kliknutím na 'Execute'.

Výsledek: 'Edu_TSQL_Alter' je odstraněn ze seznamu databáze 'Object Explorer'.

Odstraňte databázi pomocí Transact-SQL

Obnovení databáze v SQL Server

Databázi můžete vytvořit obnovením databáze, kterou jste dříve zálohovali. To lze provést spuštěním příkazu obnovení databáze, který má následující syntaxi:

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

Dotaz by měl být proveden v okně dotazu stejně jako předchozí příkaz. Například:

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

Můžete také použít navigaci GUI: Klepněte pravým tlačítkem na Databáze> Obnovit databáze> Zařízení> Importovat soubor> Klepněte na OK.

Shrnutí

  • K provedení všech tří operací můžeme použít jak GUI pro správu SQL, tak T-SQL; Vytvářejte, upravujte a mažte databázi.
  • Na instanci SQL Serveru lze zadat maximálně 32,767 XNUMX databází.
  • Systémové databáze nelze smazat.
  • Create, Alter & Drop: Všechny operace nerozlišují malá a velká písmena. Jako syntaxi můžeme použít velká i malá písmena.