SQL Server-database: Opret, rediger og slip database i SQL
Hvad er database?
En database er en samling af objekter såsom tabeller, visninger, lagrede procedurer, triggere, funktioner osv.
Overvej en med et par eksempler i det virkelige liv:
- Vi har en reol, hvor Books holder til,
- Vi har hjem, hvor vi bor,
- Vi har parkeringspladser, hvor køretøjer er parkeret og eksemplerne er utallige.
Tilsvarende har vi DATABASE, som er en slags hjem for alle vores tabeller, visninger, lagrede procedurer osv., som er forbundet med hinanden.
Teknisk set gemmer Database dataene på en velorganiseret måde for nem adgang og genfinding. I SQL Server, er der to typer databaser:
- Systemdatabaser: Systemdatabaserne oprettes automatisk for dig, når du installerer SQL Server. De spiller en afgørende rolle på serveren, især for at sikre, at databaseobjekter kører korrekt. Eksempler på SQL Server-systemdatabaser omfatter: Master, MSDB, Model, Tempdb, Resource
- Brugerdatabaser: Brugerdatabaserne er oprettet af databasebrugere som dig, der har fået adgang til at oprette databaser
Regler for oprettelse af en database
Først skal vi kende de grundlæggende regler for oprettelse af ny DB:
- Databasenavne skal være unikke i en forekomst af SQL Server.
- Databasenavne kan maksimalt være på 128 tegn.
- CREATE DATABASE-sætningen skal køre i en auto-commit-tilstand.
Der er 2 måder at oprette database i SQL server.
- SQL Server Management Studio
- Transact SQL
Sådan opretter du database i SQL Server Management Studio
Her er en trin for trin proces til at oprette en database i SQL server management studie:
Trin 1) Højreklik på 'Database' fra 'Object Explorer'-vinduet, og vælg derefter 'Ny database'.
Trin 2) Nedenfor vises skærmbilledet 'Ny database'. Indtast 'Databasenavn'. Bemærk, at kolonnen 'Logisk navn' automatisk udfyldes med:
- Edu | Filtyper: Rækker og filgrupper: PRIMÆR
- Edu_log | Filtyper: LOG og filgrupper: 'Ikke relevant'
Her:
A) Edu | Filtyper: Rækker og filgrupper: PRIMÆR er .mdf-fil
B) Edu_log | Filtyper: LOG og filgrupper: 'Ikke relevant' er .ldf-fil
Trin 3) (Valgfrit) For mere komplekse indstillinger kan vi navigere til 'Indstillinger' og 'Filgrupper'. På begynderniveau vil det være tilstrækkeligt at oprette database fra fanen Generelt.
Trin 4) Klik på 'Tilføj'.
Resultat: 'Edu'-database oprettet.
Vi kan udvide Database – 'Edu' som vil indeholde tabeller, visninger osv. Disse er i starten tomme indtil brugeren opretter ny tabel, visninger osv.
Se kildeforespørgslen:
Du kan se kildeforespørgslen til den nyoprettede 'Edu'-database som:Navigation: Højreklik på Databasenavn>Scriptdatabase som> OPRET Til> Nyt forespørgselsredigeringsvindue.
Forespørgselsvindue:
Opret 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 )
Opret database med T-SQL
En anden metode er at skrive T-SQL-forespørgslen for at oprette en database og udføre den.
Lad os tage et kig på de fleste Simple Database Creation T-SQL-forespørgsler.
Syntaks:
CREATE DATABASE <Database_name>
Forespørgsel:
CREATE DATABASE [Edu_TSQL_file]
Klik på 'Udfør'
Resultat: Vi kan se Edu_TSQL oprettet i SQL Object Explorer.
Lad os tage et kig på, hvornår vi vil oprette en database med .mdf og .ldf fil. Her kan vi angive placeringen som en implicit del af vores forespørgsel.
Syntaks:
CREATE DATABASE database_name [ CONTAINMENT = { NONE | PARTIAL } ] [ ON [ PRIMARY ] <filespec> [ ,...n ] [ , <filegroup> [ ,...n ] ] [ LOG ON <filespec> [ ,...n ] ] ];
Forespørgsel:
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 )
Sådan ændrer du database
Ligesom Create Database Query kan vi også Alter Database. Vi kan omdøbe databasenavn, ændre filplacering og indstilling osv.
Grundlæggende regler for ændring af ny DB:
- ALTER DATABASE-sætningen skal køre i en auto-commit-tilstand.
- ALTER DATABASE er ikke tilladt i en eksplicit eller implicit transaktion.
Der er 2 måder at ændre database på i SQL server.
- SQL Server Management Studio
- Transact-SQL.
Sådan ændres databasen i SQL Server Management Studio
Nedenfor er trinene til at ændre databasen i SQL Server Management Studio:
Lad os prøve at ændre navnet på vores præ-oprettede database 'Edu'.
Trin 1) Omdøb databasen
Højreklik på databasenavn. Klik på 'Omdøb'.
Trin 2) Indtast det nye databasenavn
Databasenavnet vil kunne redigeres. Indtast det nye navn, og tryk på Enter.
Resultat: Databasen er nu omdøbt til "Edu_Alter" fra 'Edu.'
Skift database med Transact-SQL
Lad os nu ændre database ved hjælp af T-SQL
Syntaks:
ALTER DATABASE <Databse_name> MODIFY NAME = <New Name>
Forespørgsel:
ALTER DATABASE Edu_TSQL MODIFY NAME = Edu_TSQL_Alter;
Kør ovenstående forespørgsel ved at klikke på 'Udfør'.
Resultat: Databasen er nu omdøbt til "Edu_TSQL_Alter" fra 'Edu_TSQL'.
Generel syntaks:
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 } } ;
Ændring af .mdf/.ldf filnavn
Forespørgsel:
Alter DATABASE Edu_TSQL_Alter; MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );
Ændring af .mdf/.ldf-filplacering
Forespørgsel:
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' );
Slet database
Der er 2 måder at slette database i SQL server.
- SQL Server Management Studio
- Transact-SQL.
Sådan dropper du database i SQL Server Management Studio
Følgende er processen til at slippe en database i SQL Server Management Studio:
Lad os prøve at slette vores præ-oprettede database 'Edu_Alter.'
Trin 1) Højreklik på Database. Klik på 'Slet' og derefter 'OK'.
Resultat: 'Edu_Alter' er slettet fra 'Object Explorer'-databaselisten.
Slet database ved hjælp af Transact-SQL
Lad os prøve at slette vores præ-oprettede database 'Edu_TSQL_Alter.'
Syntaks:
DROP DATABASE <Databse_name>
Forespørgsel:
USE master; GO DROP DATABASE Edu_TSQL_Alter; GO
Kør ovenstående forespørgsel ved at klikke på 'Udfør'.
Resultat: 'Edu_TSQL_Alter' er slettet fra 'Object Explorer'-databaselisten.
Gendan database i SQL Server
Du kan oprette en database ved at gendanne en database, du havde sikkerhedskopieret tidligere. Det kan gøres ved at køre gendan databasekommandoen, som tager følgende syntaks:
restore Database <database name> from disk = '<Backup file location + filename>
Forespørgslen skal udføres i forespørgselsvinduet ligesom den forrige kommando. For eksempel:
restore database Edu from disk = 'C:\Backup\Edu_full_backup.bak'
Du kan også bruge GUI-navigationen: Højreklik på Database>Gendan databaser>Enhed> Importer fil>Klik Ok.
Resumé
- Vi kan bruge både SQL Management GUI og T-SQL til at udføre alle de tre operationer; Opret, rediger og slet database.
- Der kan maksimalt angives 32,767 databaser på en forekomst af SQL Server.
- Systemdatabaser kan ikke slettes.
- Opret, rediger og slip: Alle handlinger skelner mellem store og små bogstaver. Vi kan bruge både store og små bogstaver som syntaks.