SQL Server-Datenbank: Datenbank in SQL erstellen, ändern und löschen
Was ist eine Datenbank?
Eine Datenbank ist eine Sammlung von Objekten wie Tabellen, Ansichten, gespeicherten Prozeduren, Triggern, Funktionen usw.
Betrachten Sie ein Beispiel mit einigen Beispielen aus dem wirklichen Leben:
- Wir haben ein Bücherregal, in dem Bücher aufbewahrt werden.
- Wir haben Häuser, in denen wir leben,
- Wir haben Parkplätze, auf denen Fahrzeuge geparkt werden, und es gibt unzählige Beispiele dafür.
Ebenso haben wir DATABASE, eine Art Heimat für alle unsere Tabellen, Ansichten, gespeicherten Prozeduren usw., die miteinander verknüpft sind.
Technisch gesehen speichert die Datenbank die Daten gut organisiert, sodass sie leicht zugänglich und abrufbar sind. In SQL ServerEs gibt zwei Arten von Datenbanken:
- Systemdatenbanken: Die Systemdatenbanken werden automatisch für Sie erstellt, wenn Sie den SQL Server installieren. Sie spielen im Server eine entscheidende Rolle, insbesondere bei der Gewährleistung der korrekten Ausführung von Datenbankobjekten. Beispiele für SQL Server-Systemdatenbanken sind: Master, MSDB, Model, Tempdb, Resource
- Benutzerdatenbanken: Die Benutzerdatenbanken werden von Datenbankbenutzern wie Ihnen erstellt, denen Zugriff zum Erstellen von Datenbanken gewährt wurde
Regeln zum Erstellen einer Datenbank
Zunächst müssen wir die Grundregeln für die Erstellung einer neuen Datenbank kennen:
- Datenbanknamen müssen innerhalb einer Instanz von SQL Server eindeutig sein.
- Datenbanknamen dürfen maximal 128 Zeichen lang sein.
- Die CREATE DATABASE-Anweisung muss im Auto-Commit-Modus ausgeführt werden.
Es gibt zwei Möglichkeiten, eine Datenbank in SQL Server zu erstellen.
- SQL Server Management Studio
- SQL-Transaktion
So erstellen Sie eine Datenbank in SQL Server Management Studio
Hier ist ein Schritt-für-Schritt-Prozess zum Erstellen einer Datenbank SQL Server-Management-Studio:
Schritt 1) Klicken Sie im Fenster „Objekt-Explorer“ mit der rechten Maustaste auf „Datenbank“ und wählen Sie dann „Neue Datenbank“.
Schritt 2) Unten erscheint der Bildschirm „Neue Datenbank“. Geben Sie „Datenbankname“ ein. Beachten Sie, dass die Spalte „Logischer Name“ automatisch ausgefüllt wird mit:
- Edu | Dateitypen: Zeilen und Dateigruppen: PRIMÄR
- Edu_log | Dateitypen: LOG und Dateigruppen: „Nicht anwendbar“
Hier:
A) Edu | Dateitypen: Zeilen und Dateigruppen: PRIMARY ist eine MDF-Datei
B) Edu_log | Dateitypen: LOG und Dateigruppen: „Nicht anwendbar“ ist eine .ldf-Datei
Schritt 3) (Optional) Für komplexere Einstellungen können wir zu „Optionen“ und „Dateigruppen“ navigieren. Auf Anfängerebene reicht es aus, eine Datenbank über die Registerkarte „Allgemein“ zu erstellen.
Schritt 4) Klicken Sie auf „Hinzufügen“.
Ergebnis: 'Edu'-Datenbank erstellt.
Wir können die Datenbank „Edu“ erweitern, die Tabellen, Ansichten usw. enthält. Diese sind zunächst leer, bis der Benutzer neue Tabellen, Ansichten usw. erstellt.
Sehen Sie sich die Quellabfrage an:
Sie können die Quellabfrage der neu erstellten „Edu“-Datenbank wie folgt anzeigen: Navigation: Rechtsklick auf Datenbankname > Skriptdatenbank als > ERSTELLEN in > Neues Abfrage-Editor-Fenster.
Abfragefenster:
Skript erstellen:
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 )
Erstellen Sie eine Datenbank mit T-SQL
Eine andere Methode besteht darin, die T-SQL-Abfrage zum Erstellen einer Datenbank zu schreiben und auszuführen.
Werfen wir einen Blick auf die meisten T-SQL-Abfragen zur einfachen Datenbankerstellung.
Syntax:
CREATE DATABASE <Database_name>
Abfrage:
CREATE DATABASE [Edu_TSQL_file]
Klicken Sie auf „Ausführen“
Ergebnis: Wir können sehen, wie Edu_TSQL im SQL Object Explorer erstellt wurde.
Werfen wir einen Blick darauf, wann wir eine Datenbank mit .mdf- und .ldf-Dateien erstellen möchten. Hier können wir den Standort als impliziten Teil unserer Abfrage angeben.
Syntax:
CREATE DATABASE database_name [ CONTAINMENT = { NONE | PARTIAL } ] [ ON [ PRIMARY ] <filespec> [ ,...n ] [ , <filegroup> [ ,...n ] ] [ LOG ON <filespec> [ ,...n ] ] ];
Abfrage:
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 )
So ändern Sie die Datenbank
Wie „Datenbankabfrage erstellen“ können wir auch die Datenbank ändern. Wir können den Datenbanknamen umbenennen, den Speicherort und die Einstellung der Datei ändern usw.
Grundregeln für die Änderung neuer DB:
- Die ALTER DATABASE-Anweisung muss im Auto-Commit-Modus ausgeführt werden.
- ALTER DATABASE ist in einer expliziten oder impliziten Transaktion nicht zulässig.
Es gibt zwei Möglichkeiten, die Datenbank in SQL Server zu ändern.
- SQL Server Management Studio
- Transact-SQL.
So ändern Sie die Datenbank in SQL Server Management Studio
Im Folgenden finden Sie die Schritte zum Ändern der Datenbank in SQL Server Management Studio:
Versuchen wir, den Namen unserer vorab erstellten Datenbank „Edu“ zu ändern.
Schritt 1) Benennen Sie die Datenbank um
Klicken Sie mit der rechten Maustaste auf den Datenbanknamen. Klicken Sie auf „Umbenennen“.
Schritt 2) Geben Sie den neuen Datenbanknamen ein
Der Datenbankname kann bearbeitet werden. Geben Sie den neuen Namen ein und drücken Sie die Eingabetaste.
Ergebnis: Die Datenbank wird jetzt von „Edu“ in „Edu_Alter“ umbenannt.
Datenbank mit Transact-SQL ändern
Lassen Sie uns nun die Datenbank mit T-SQL ändern
Syntax:
ALTER DATABASE <Databse_name> MODIFY NAME = <New Name>
Abfrage:
ALTER DATABASE Edu_TSQL MODIFY NAME = Edu_TSQL_Alter;
Führen Sie die obige Abfrage aus, indem Sie auf „Ausführen“ klicken.
Ergebnis: Die Datenbank wird jetzt von „Edu_TSQL“ in „Edu_TSQL_Alter“ umbenannt.
Allgemeine Syntax:
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 } } ;
Ändern des .mdf/.ldf-Dateinamens
Abfrage:
Alter DATABASE Edu_TSQL_Alter; MODIFY FILE ( NAME = Edu_TSQL, NEWNAME = Edu_TSQL_newName );
Ändern des Speicherorts der .mdf/.ldf-Datei
Abfrage:
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' );
Datenbank löschen
Es gibt zwei Möglichkeiten, die Datenbank in SQL Server zu löschen.
- SQL Server Management Studio
- Transact-SQL.
So löschen Sie eine Datenbank in SQL Server Management Studio
Im Folgenden wird der Vorgang zum Löschen einer Datenbank im SQL Server Management Studio beschrieben:
Versuchen wir, unsere vorab erstellte Datenbank „Edu_Alter“ zu löschen.
Schritt 1) Klicken Sie mit der rechten Maustaste auf Datenbank. Klicken Sie auf „Löschen“ und dann auf „OK“.
Ergebnis: „Edu_Alter“ wird aus der Datenbankliste „Object Explorer“ gelöscht.
Datenbank mit Transact-SQL löschen
Versuchen wir, unsere vorab erstellte Datenbank „Edu_TSQL_Alter“ zu löschen.
Syntax:
DROP DATABASE <Databse_name>
Abfrage:
USE master; GO DROP DATABASE Edu_TSQL_Alter; GO
Führen Sie die obige Abfrage aus, indem Sie auf „Ausführen“ klicken.
Ergebnis: „Edu_TSQL_Alter“ wird aus der Datenbankliste „Object Explorer“ gelöscht.
Datenbank in SQL Server wiederherstellen
Sie können eine Datenbank erstellen, indem Sie eine Datenbank wiederherstellen, die Sie zuvor gesichert haben. Dies können Sie tun, indem Sie den Befehl „restore database“ ausführen, der die folgende Syntax verwendet:
restore Database <database name> from disk = '<Backup file location + filename>
Die Abfrage sollte wie unser vorheriger Befehl innerhalb des Abfragefensters ausgeführt werden. Zum Beispiel:
restore database Edu from disk = 'C:\Backup\Edu_full_backup.bak'
Sie können auch die GUI-Navigation verwenden: Klicken Sie mit der rechten Maustaste auf Datenbank > Datenbanken wiederherstellen > Gerät > Datei importieren > Klicken Sie auf „OK“.
Zusammenfassung
- Wir können sowohl die SQL Management-GUI als auch T-SQL verwenden, um alle drei Vorgänge auszuführen: Datenbank erstellen, ändern und löschen.
- Auf einer Instanz von SQL Server können maximal 32,767 Datenbanken angegeben werden.
- Systemdatenbanken können nicht gelöscht werden.
- Erstellen, Ändern und Löschen: Bei allen Vorgängen wird die Groß- und Kleinschreibung nicht beachtet. Wir können sowohl Groß- als auch Kleinschreibung als Syntax verwenden.