SQL Server-database: database maken, wijzigen en verwijderen in SQL
Wat is een database?
Een database is een verzameling objecten zoals tabellen, views, opgeslagen procedures, triggers, functies, enz.
Overweeg een met een paar voorbeelden uit het echte leven:
- We hebben een boekenkast waar boeken staan,
- We hebben huizen waar we wonen,
- We hebben parkeerplaatsen waar voertuigen geparkeerd staan en de voorbeelden zijn legio.
Op dezelfde manier hebben we DATABASE, een soort thuis voor al onze tabellen, weergaven, opgeslagen procedures, enz. Die met elkaar verbonden zijn.
Technisch gezien slaat Database de gegevens op een overzichtelijke manier op, zodat deze gemakkelijk toegankelijk en op te halen zijn. In SQL Server, zijn er twee soorten databases:
- Systeemdatabases: De systeemdatabases worden automatisch voor u aangemaakt wanneer u de SQL Server installeert. Ze spelen een cruciale rol op de server, vooral om ervoor te zorgen dat databaseobjecten correct werken. Voorbeelden van SQL Server-systeemdatabases zijn: Master, MSDB, Model, Tempdb, Resource
- Gebruikersdatabases: De gebruikersdatabases worden gemaakt door databasegebruikers zoals u, die toegang hebben gekregen om databases te maken
Regels voor het maken van een database
Eerst moeten we de basisregels kennen voor het maken van nieuwe DB:
- Databasenamen moeten uniek zijn binnen een exemplaar van SQL Server.
- Databasenamen mogen maximaal 128 tekens lang zijn.
- De instructie CREATE DATABASE moet in de modus voor automatisch vastleggen worden uitgevoerd.
Er zijn 2 manieren om een database op de SQL-server te maken.
- SQL Server Management Studio
- Transactie-SQL
Hoe u een database maakt in SQL Server Management Studio
Hier is een stapsgewijs proces voor het maken van een database SQL-serverbeheerstudio:
Stap 1) Klik met de rechtermuisknop op 'Database' in het venster 'Object Explorer' en selecteer vervolgens 'Nieuwe database'.
Stap 2) Hieronder verschijnt het scherm 'Nieuwe database'. Voer 'Databasenaam' in. Merk op dat: de kolom 'Logische naam' automatisch wordt gevuld met:
- Ed | Bestandstypen: rijen en bestandsgroepen: PRIMAIR
- Edu_log | Bestandstypen: LOG en bestandsgroepen: 'Niet van toepassing'
Hier:
A) Ed | Bestandstypen: rijen en bestandsgroepen: PRIMAIRE is een .mdf-bestand
B) Edu_log | Bestandstypen: LOG en bestandsgroepen: 'Niet van toepassing' is een .ldf-bestand
Stap 3) (Optioneel) Voor complexere instellingen kunnen we naar 'Opties' en 'Bestandsgroepen' navigeren. Op beginnersniveau is het voldoende om een database aan te maken via het tabblad Algemeen.
Stap 4) Klik op 'Toevoegen'.
Resultaat: 'Edu'-database gemaakt.
We kunnen Database – 'Edu' uitbreiden, die tabellen, weergaven, enz. bevat. Deze zijn aanvankelijk leeg totdat de gebruiker een nieuwe tabel, weergaven, enz. maakt.
Bekijk de bronquery:
U kunt de bronquery van de nieuw gemaakte 'Edu'-database bekijken als: Navigatie: Klik met de rechtermuisknop op Databasenaam> Scriptdatabase als> CREATE To> Venster Nieuwe query-editor.
Queryvenster:
Script maken:
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 )
Database maken met T-SQL
Een andere methode is om de T-SQL-query te schrijven om een database te maken en deze uit te voeren.
Laten we eens kijken naar de meeste T-SQL-query's voor het maken van eenvoudige databases.
Syntax:
CREATE DATABASE <Database_name>
Query:
CREATE DATABASE [Edu_TSQL_file]
Klik op 'Uitvoeren'
Resultaat: We kunnen zien dat Edu_TSQL is gemaakt in SQL Object Explorer.
Laten we eens kijken wanneer we een database willen maken met een .mdf- en .ldf-bestand. Hier kunnen we de locatie als impliciet onderdeel van onze vraag opgeven.
Syntax:
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 )
Database wijzigen
Net als Create Database Query kunnen we ook Database wijzigen. We kunnen de databasenaam hernoemen, de bestandslocatie en -instelling wijzigen, enz.
Basisregels voor het wijzigen van nieuwe DB:
- De ALTER DATABASE-instructie moet in de automatische commit-modus worden uitgevoerd.
- ALTER DATABASE is niet toegestaan in een expliciete of impliciete transactie.
Er zijn 2 manieren om de database in SQL Server te wijzigen.
- SQL Server Management Studio
- Transact-SQL.
Database wijzigen in SQL Server Management Studio
Hieronder vindt u de stappen om de database in SQL Server Management Studio te wijzigen:
Laten we proberen de naam van onze vooraf gemaakte database 'Edu' te wijzigen.
Stap 1) Hernoem de database
Klik met de rechtermuisknop op Databasenaam. Klik op 'Hernoemen'.
Stap 2) Voer de nieuwe databasenaam in
De databasenaam kan worden bewerkt. Voer de nieuwe naam in en druk op Enter.
Resultaat: De database heeft nu de naam 'Edu_Alter' gekregen van 'Edu'.
Database wijzigen met Transact-SQL
Laten we nu de database wijzigen met T-SQL
Syntax:
ALTER DATABASE <Databse_name> MODIFY NAME = <New Name>
Query:
ALTER DATABASE Edu_TSQL MODIFY NAME = Edu_TSQL_Alter;
Voer de bovenstaande query uit door op 'Uitvoeren' te klikken.
Resultaat: De database heeft nu de naam “Edu_TSQL_Alter” gekregen van 'Edu_TSQL'.
Algemene syntaxis:
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 } } ;
De bestandsnaam .mdf/.ldf wijzigen
Query:
Alter DATABASE Edu_TSQL_Alter; MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );
De bestandslocatie .mdf/.ldf wijzigen
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' );
Database verwijderen
Er zijn 2 manieren om de database in de SQL-server te verwijderen.
- SQL Server Management Studio
- Transact-SQL.
Database verwijderen in SQL Server Management Studio
Hieronder volgt het proces om een database te verwijderen in SQL Server Management Studio:
Laten we proberen onze vooraf gemaakte database 'Edu_Alter' te verwijderen.
Stap 1) Klik met de rechtermuisknop op Database. Klik op 'Verwijderen' en vervolgens op 'OK'.
Resultaat: 'Edu_Alter' wordt verwijderd uit de databaselijst 'Object Explorer'.
Database verwijderen met Transact-SQL
Laten we proberen onze vooraf gemaakte database 'Edu_TSQL_Alter.'
Syntax:
DROP DATABASE <Databse_name>
Query:
USE master; GO DROP DATABASE Edu_TSQL_Alter; GO
Voer de bovenstaande query uit door op 'Uitvoeren' te klikken.
Resultaat: 'Edu_TSQL_Alter' wordt verwijderd uit de databaselijst 'Object Explorer'.
Database herstellen in SQL Server
U kunt een database maken door een database te herstellen waarvan u eerder een back-up hebt gemaakt. Dit kan worden gedaan door de opdracht restore database uit te voeren, die de volgende syntaxis heeft:
restore Database <database name> from disk = '<Backup file location + filename>
De query moet binnen het queryvenster worden uitgevoerd, net als bij de vorige opdracht. Bijvoorbeeld:
restore database Edu from disk = 'C:\Backup\Edu_full_backup.bak'
U kunt ook de GUI-navigatie gebruiken: Klik met de rechtermuisknop op Database>Databases herstellen>Apparaat> Bestand importeren>Klik op Ok.
Samenvatting
- We kunnen zowel SQL Management GUI als T-SQL gebruiken om alle drie de bewerkingen uit te voeren: een database maken, wijzigen en verwijderen.
- Er kunnen maximaal 32,767 databases worden opgegeven op een exemplaar van SQL Server.
- Systeemdatabases kunnen niet worden verwijderd.
- Create, Alter & Drop: Alle bewerkingen zijn hoofdlettergevoelig. We kunnen zowel hoofdletters als kleine letters gebruiken als syntaxis.