SQL Server-database: Opprett, endre og slipp database i SQL
Hva er database?
En database er en samling av objekter som tabeller, visninger, lagrede prosedyrer, utløsere, funksjoner, etc.
Vurder en med noen få eksempler i det virkelige liv:
- Vi har bokhylle der Books holder til,
- Vi har hjem der vi bor,
- Vi har parkeringsplasser hvor kjøretøyer er parkert og eksempler er utallige.
På samme måte har vi DATABASE som er et slags hjem for alle våre tabeller, visninger, lagrede prosedyrer osv. som er sammenkoblet.
Teknisk sett lagrer Database dataene på en godt organisert måte for enkel tilgang og gjenfinning. I SQL Server, er det to typer databaser:
- Systemdatabaser: Systemdatabasene opprettes automatisk for deg når du installerer SQL Server. De spiller en avgjørende rolle på serveren, spesielt for å sikre at databaseobjekter kjører riktig. Eksempler på SQL Server-systemdatabaser inkluderer: Master, MSDB, Model, Tempdb, Resource
- Brukerdatabaser: Brukerdatabasene er opprettet av databasebrukere som deg som har fått tilgang til å lage databaser
Regler for å opprette en database
Først må vi kjenne til de grunnleggende reglene for å lage ny DB:
- Databasenavn må være unike i en forekomst av SQL Server.
- Databasenavn kan være på maksimalt 128 tegn.
- CREATE DATABASE-setningen må kjøres i en auto-commit-modus.
Det er 2 måter å opprette database i SQL server.
- SQL Server Management Studio
- Transaksjoner SQL
Hvordan lage en database i SQL Server Management Studio
Her er en trinnvis prosess for å opprette en database i SQL server management studio:
Trinn 1) Høyreklikk på 'Database' fra 'Objektutforsker'-vinduet og velg deretter 'Ny database'.
Trinn 2) Nedenfor vises skjermbildet "Ny database". Skriv inn 'Databasenavn'. Merk at: 'Logisk navn'-kolonnen vil automatisk fylles ut med:
- Edu | Filtyper: Rader og filgrupper: PRIMÆR
- Edu_log | Filtyper: LOG og filgrupper: 'Ikke aktuelt'
Her:
A) Edu | Filtyper: Rader og filgrupper: PRIMÆR er .mdf-fil
B) Edu_log | Filtyper: LOG og filgrupper: 'Ikke relevant' er .ldf-fil
Trinn 3) (Valgfritt) For mer komplekse innstillinger kan vi navigere til 'Alternativer' og 'Filgrupper'. På nybegynnernivå vil det være tilstrekkelig å opprette database fra fanen Generelt.
Trinn 4) Klikk på 'Legg til'.
Resultat: 'Edu'-database opprettet.
Vi kan utvide Database – 'Edu' som vil inneholde tabeller, visninger osv. Disse er i utgangspunktet tomme til brukeren oppretter ny tabell, visninger osv.
Se kildesøket:
Du kan se kildespørringen til den nyopprettede 'Edu'-databasen som:Navigasjon: Høyreklikk på Databasenavn>Skriptdatabase som> OPPRETT Til> Nytt spørreredigeringsvindu.
Spørringsvindu:
Lag 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 )
Opprett database med T-SQL
En annen metode er å skrive T-SQL-spørringen for å lage en database og kjøre den.
La oss ta en titt på de fleste Simple Database Creation T-SQL-spørsmål.
Syntaks:
CREATE DATABASE <Database_name>
Spørsmål:
CREATE DATABASE [Edu_TSQL_file]
Klikk på "Utfør"
Resultat: Vi kan se Edu_TSQL opprettet i SQL Object Explorer.
La oss ta en titt når vi vil lage en database med .mdf- og .ldf-fil. Her kan vi angi plasseringen som en implisitt del av søket vårt.
Syntaks:
CREATE DATABASE database_name [ CONTAINMENT = { NONE | PARTIAL } ] [ ON [ PRIMARY ] <filespec> [ ,...n ] [ , <filegroup> [ ,...n ] ] [ LOG ON <filespec> [ ,...n ] ] ];
Spørsmål:
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 )
Hvordan endre databasen
I likhet med Create Database Query kan vi også endre database. Vi kan gi nytt navn til databasen, endre filplassering og innstilling osv.
Grunnleggende regler for endring av ny DB:
- ALTER DATABASE-setningen må kjøres i en auto-commit-modus.
- ALTER DATABASE er ikke tillatt i en eksplisitt eller implisitt transaksjon.
Det er 2 måter å endre database på i SQL-server.
- SQL Server Management Studio
- Transact-SQL.
Hvordan endre database i SQL Server Management Studio
Nedenfor er trinnene for å endre databasen i SQL Server Management Studio:
La oss prøve å endre navnet på vår forhåndslagrede database 'Edu'.
Trinn 1) Gi nytt navn til databasen
Høyreklikk på databasenavn. Klikk på 'Gi nytt navn'.
Trinn 2) Skriv inn det nye databasenavnet
Databasenavnet vil være redigerbart. Skriv inn det nye navnet og trykk Enter.
Resultat: Databasen er nå omdøpt til "Edu_Alter" fra "Edu."
Endre database med Transact-SQL
La oss nå endre database ved hjelp av T-SQL
Syntaks:
ALTER DATABASE <Databse_name> MODIFY NAME = <New Name>
Spørsmål:
ALTER DATABASE Edu_TSQL MODIFY NAME = Edu_TSQL_Alter;
Kjør søket ovenfor ved å klikke på "Utfør".
Resultat: Databasen er nå omdøpt til "Edu_TSQL_Alter" fra "Edu_TSQL".
Generell 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 } } ;
Endre .mdf/.ldf-filnavn
Spørsmål:
Alter DATABASE Edu_TSQL_Alter; MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );
Endre .mdf/.ldf-filplassering
Spørsmål:
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' );
Slett database
Det er 2 måter å slette database i SQL server.
- SQL Server Management Studio
- Transact-SQL.
Slik slipper du database i SQL Server Management Studio
Følgende er prosessen for å slippe en database i SQL server management studio:
La oss prøve å slette vår forhåndslagrede database "Edu_Alter."
Trinn 1) Høyreklikk Database. Klikk på "Slett" og deretter "OK".
Resultat: 'Edu_Alter' er slettet fra 'Object Explorer'-databaselisten.
Slett database ved hjelp av Transact-SQL
La oss prøve å slette vår forhåndslagrede database 'Edu_TSQL_Alter.'
Syntaks:
DROP DATABASE <Databse_name>
Spørsmål:
USE master; GO DROP DATABASE Edu_TSQL_Alter; GO
Kjør søket ovenfor ved å klikke på "Utfør".
Resultat: 'Edu_TSQL_Alter' er slettet fra 'Object Explorer'-databaselisten.
Gjenopprett database i SQL Server
Du kan opprette en database ved å gjenopprette en database du hadde sikkerhetskopiert tidligere. Det kan gjøres ved å kjøre kommandoen gjenopprett database som tar følgende syntaks:
restore Database <database name> from disk = '<Backup file location + filename>
Spørringen skal utføres i spørringsvinduet akkurat som den forrige kommandoen. For eksempel:
restore database Edu from disk = 'C:\Backup\Edu_full_backup.bak'
Du kan også bruke GUI-navigasjonen: Høyreklikk Database>Gjenopprett databaser>Enhet> Importer fil>Klikk OK.
Sammendrag
- Vi kan bruke både SQL Management GUI og T-SQL for å utføre alle de tre operasjonene; Opprett, endre og slett database.
- Maksimalt 32,767 XNUMX databaser kan spesifiseres på en forekomst av SQL Server.
- Systemdatabaser kan ikke slettes.
- Opprett, endre og slipp: Alle operasjoner skiller mellom store og små bokstaver. Vi kan bruke både store og små bokstaver som syntaks.