Zum Inhalt springen

Microsoft SQL Server

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von MSSQL)
Skriptfehler: Ein solches Modul „WLink“ ist nicht vorhanden.

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | Logo
Basisdaten

Maintainer Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.
Entwickler Microsoft
Erscheinungsjahr Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.
Aktuelle Version Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.
(Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.)
Aktuelle Vorabversion Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.
(Skriptfehler: Ein solches Modul „Wikidata“ ist nicht vorhanden.)
Betriebssystem Windows, Linux<ref name="Linux" />
Programmier­sprache C, C++
Kategorie RDBMS
Lizenz Microsoft EULA (Closed Source)
deutschsprachig ja
https://www.microsoft.com/de-de/sql-server/

Der Microsoft SQL Server ist ein relationales Datenbankmanagementsystem von Microsoft, das Daten so organisiert, dass es sie in verschiedenen Tabellen speichert und mithilfe von Beziehungen zwischen diesen Tabellen verbindet. Dies ermöglicht es, Daten effizient abzurufen und zu analysieren.

Geschichte[Bearbeiten]

Zeittafel Microsoft SQL Server<ref>SQL Server Version und SP-IDs auf Microsoft SQL Server Version List (abgerufen am 26. April 2018)</ref>
Versions-ID Jahr Release Name Projektbezeichnung
1.0
(OS/2)
1989 SQL Server 1.0
(16bit)
—
1.1
(OS/2)
1990 SQL Server 1.1
(16bit)
—
1.11
(OS/2)
1991 SQL Server 1.1
(16bit)
—
4.2
(OS/2)
1992 SQL Server 4.2
(16bit)
—
4.21
(WinNT)
1993 SQL Server 4.21 SQLNT
6.0 1995 SQL Server 6.0 SQL95
6.5 1996 SQL Server 6.5 Hydra
7.0 1998 SQL Server 7.0 Sphinx<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden. auf Winsupersite.com (abgerufen am 13. September 2011)</ref>
— 1999 SQL Server 7.0
OLAP Tools
Plato
8.0 2000 SQL Server 2000 Shiloh<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden. auf Microsoft.com (abgerufen am 13. September 2011)</ref>
8.0 2003 SQL Server 2000
64-bit Edition
Liberty
9.0 2005 SQL Server 2005 Yukon
10.0 2008 SQL Server 2008 Katmai
10.25 2010 SQL Azure Matrix (aka CloudDB)
10.5 2010 SQL Server 2008 R2 Kilimanjaro (aka KJ)
11.0 2012 SQL Server 2012 Denali
12.0 2014 SQL Server 2014 Hekaton
13.0 2016 SQL Server 2016
14.0 2017 SQL Server 2017 Helsinki
15.0 2019 SQL Server 2019 Seattle
16.0 2022 SQL Server 2022 Dallas
17.0 2025 SQL Server 2025

Microsoft SQL Server entstand aus einer Zusammenarbeit der beiden Unternehmen Microsoft und Sybase Ende der 1980er Jahre.<ref>MSDN: <templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> 1989 wurde die erste Version für das von Microsoft und IBM entwickelte Betriebssystem OS/2 veröffentlicht. Das Produkt entsprach prinzipiell dem Sybase SQL Server 4.0 für Unix und VMS. 1992 erschien der Microsoft SQL Server 4.2 für OS/2 1.3. Im Anschluss mit der Veröffentlichung von Windows NT im Jahr 1993 erschien schon bald Microsoft SQL Server 4.21, der anstatt auf OS/2 auf Windows NT als Betriebssystem setzte. In dieser Zeit lockerte sich außerdem die Kooperation zwischen Microsoft und Sybase. Im Jahr 1995 erschien mit Microsoft SQL Server 6.0 eine eigenständige Weiterentwicklung der Kooperation, dem 1996 die Version 6.5 folgte. Mit der Version 7.0, die im Jahr 1999 erschien, verabschiedete sich Microsoft von der mit Sybase entwickelten Codebasis und brachte eine vollkommen neue Datenbank-Engine auf den Markt. Diese war auch Basis in den darauffolgenden Versionen ab SQL Server 2000.

Ab der Version SQL Server 2017 wurde der Support für folgende Linux-Systeme ergänzt: Red Hat Enterprise Linux, SUSE Linux Enterprise Server, Ubuntu und Docker.<ref name="Linux">Installieren von SQL Server 2017 unter Linux, 21. Dezember 2017, abgerufen am 5. März 2018</ref>

Eigenschaften[Bearbeiten]

Der SQL Server ist ein relationales Datenbankmanagementsystem, das sich am Standard der aktuellen SQL-Version orientiert. Der Microsoft SQL Server liegt in verschiedenen Editionen vor, die ein vielfältiges Angebot abdecken. Die Editionen unterscheiden sich vor allem im Preis, ihren Funktionen und Hardwareeinschränkungen. Der MSSQL-Server kann auch als Data Warehouse genutzt werden, indem es den Mitarbeitern in einem Unternehmen eine Sicht auf das Geschäft und dessen Daten ermöglicht. Durch seine Business-Intelligence-Plattform bietet er eine skalierbare Infrastruktur, die es der IT ermöglicht, die Nutzung von Business Intelligence im gesamten Unternehmen zu fördern und Business Intelligence dort bereitzustellen, wo Anwender es wünschen.<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Der SQL Server besteht aus vielen Services, wie z. B. Analysis Services, Reporting Services und Integration Services, und Tools, z. B. den SQL Server Data Tools (SSDT). Für den Zugriff, Entwurf und die Entwicklung unabhängig von einer konkreten Anwendung stellt Microsoft das SQL Server Management Studio kostenlos zur Verfügung.

Microsoft SQL Server verwendet für Datenbankabfragen die SQL-Variante T-SQL (Transact-SQL). T-SQL fügt hauptsächlich zusätzliche Syntax zum Gebrauch in Stored Procedures und Transaktionen hinzu. Weiterhin unterstützt MSSQL OLE DB und ODBC (Open Database Connectivity).

Seit SQL Server 2005 werden unter anderem Programmiersprachen, welche auf der .NET CLR laufen, für das Erstellen von Stored Procedures unterstützt. Mit Visual Studio wird seit 2005 auch eine passende IDE mitgeliefert.

In einer Windows-Installation (sowohl auf Servern als auch auf Individualsystemen) können gleichzeitig mehrere (gleiche oder unterschiedliche) MSSQL-Server laufen, die als Instanzen bezeichnet werden. Jede Instanz kann wiederum mehrere Datenbanken enthalten.

Redundanz / Ausfallsicherheit[Bearbeiten]

Microsoft bietet eine Reihe von Techniken an, um Daten redundant zu speichern.

Clustering Replication Log Shipping Mirroring AlwaysOn
Availability Groups
AlwaysOn
Failover Cluster Instance
Einführung SQL Server 6.5 SQL Server 7.0 SQL Server 2000 SQL Server 2005 SQL Server 2012 SQL Server 2012
Mindest. Lizenz Standard / (Web) Enterprise: Peer-To-Peer
Standard: Snapshot / Transactional / Merge
Standard / (Web) Standard Enterprise Standard
Max. Anzahl Kopien 15 unbegrenzt unbegrenzt 1 3 unbegrenzt
Zusätzliche Infrastruktur geteilte Netzwerkressource (Distributor Server) Monitoring Server
(Optional)
Witness Server
(Optional)
— geteilte Netzwerkressource
Failover manuell /
automatisch
nur manuell nur manuell manuell /
automatisch
manuell /
automatisch
manuell /
automatisch
Bezeichnung Quelle Node Publisher Primary Principal Primary Node
Bezeichnung Kopie Node Subscriber Secondary Mirror Secondary Node
Sicherung von Server / Instanz Datenbank(-objekten) Datenbank Datenbank Datenbank(-gruppe) Server / Instanz

Es ist möglich, gewisse Redundanztechnologien gleichzeitig parallel zu betreiben – zum Beispiel die Datenbankreplikation zusammen mit einer AlwaysOn-Availability-Group.<ref>Microsoft MSDN: Configure Replication for AlwaysOn Availability Groups (SQL Server)</ref> Die „Datenbankreplikation“ teilt sich weiterhin in die Untervarianten „Snapshot Replication“, „Transactional Replication“, „Merge Replication“ und „Peer-To-Peer-Replication“.

Versionen[Bearbeiten]

SQL Server 2012[Bearbeiten]

Der SQL Server 2012 wurde am 6. März 2012 veröffentlicht. Bei den Editionen ließ Microsoft die erst beim Vorgänger eingeführte Datacenter Edition wegfallen und führte eine neue Edition Business Intelligence ein. Die Neuerungen oder Verbesserungen fanden in allen Bereichen des SQL Servers statt, darunter im Datenbankmodul, dem Analyse Service, dem Reporting Service und der Replikation.<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref>

Zu den Änderungen bzw. Neuerungen gehörten unter anderem Performanceoptimierung für SharePoint, die Hochverfügbarkeitslösung „Always On“, die Cloud-Lösung „Azure“, die Data Quality Services „DQS“, Contained Database und Columnstore Index.

Außerdem wurde die SQL-eigene Programmierschnittstelle T-SQL um weitere Funktionen ergänzt. Auf der anderen Seite wurden einige Funktionen der Vorgängerversionen entfernt<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> und viele Funktionen als Deprecated gekennzeichnet,<ref name="Deprecated2012">Microsoft TechNet: <templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> was bedeutet, dass diese Funktionen in zukünftigen Versionen wegfallen.

Neue T-SQL-Funktionen in SQL Server 2012<ref>Microsoft MSDN: Programmability Enhancements</ref>
  • Konvertierung:
    • PARSE()
    • TRY_CONVERT()
    • TRY_PARSE()
  • Datum und Uhrzeit:
    • DATEFROMPARTS()
    • DATETIME2FROMPARTS()
    • DATETIMEOFFSETFROMPARTS()
    • EOMONTH()
    • SMALLDATETIMEFROMPARTS()
    • TIMEFROMPARTS()
  • Logik:
    • CHOOSE()
    • IIF()
  • Zeichenkette:
    • CONCAT()
    • FORMAT()
  • Analytik:
    • CUME_DIST()
    • FIRST_VALUE()
    • LAG()
    • LAST_VALUE()
    • LEAD()
    • PERCENTILE_CONT()
    • PERCENTILE_DISC()
    • PERCENT_RANK()

SQL Server 2014[Bearbeiten]

Die Version 2014 (Codename Hekaton, freigegeben am 1. April 2014<ref name="sqlsrelease2014"><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref>) des SQL Servers wurde in Hinblick auf die performante Verarbeitung großer Datenmengen weiter optimiert, um die Echtzeit-Transaktionsverarbeitung zu verbessern. Hierzu gehören die Fähigkeit, Tabellen oder ganze Datenbanken komplett im Hauptspeicher zu halten (In-Memory-Datenbank) sowie eine verbesserte Handhabung spaltenbasierter Indexe.

Es wurde möglich, SQL-Server-Datendateien in Azure abzulegen und eine SQL-Server-Datenbank auf einem virtuellen Computer in Azure zu hosten.

Verschlüsselung von Sicherungen während des Sicherungsvorganges mittels AES 128, AES 192, AES 256 und Triple DES wurde hinzugefügt.

Die Unterstützung von Failoverclusterinstanzen wurde verbessert.<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref>

SQL Server 2016[Bearbeiten]

Es besteht nun die Möglichkeit, während der Installation und Konfiguration von SQL Server mehrere tempDB-Datenbankdateien zu konfigurieren. Der neue Abfragespeicher speichert Abfragetexte, Ausführungspläne und Leistungsmetriken in der Datenbank, was eine einfache Überwachung der Leistung und Behebung von Leistungsproblemen ermöglicht.

Die neu integrierte JSON-Unterstützung in SQL Server ermöglicht Import-, Export-, Analyse- und Speichervorgänge mit JSON.

Die neue PolyBase-Abfrage-Engine integriert SQL Server mit externen Daten in Hadoop oder Azure Blob Storage. Sie ermöglicht den Import und Export von Daten sowie die Ausführung von Abfragen.

Mit der neuen Funktion Stretch Database können Daten aus einer lokalen SQL Server-Datenbank dynamisch und sicher in einer Azure SQL-Datenbank in der Cloud archiviert werden. SQL Server fragt hierzu automatisch sowohl lokale als auch Remote-Daten in den verknüpften Datenbanken ab.

Es wurden neue Sicherheitsfeatures hinzugefügt: Always Encrypted ermöglicht den Zugriff auf verschlüsselte sensible Daten in einer SQL Server 2016-Datenbank nur für Anwendungen, die über den kryptographischen Schlüssel verfügen. Der Schlüssel wird niemals an SQL Server übergeben.<ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Microsoft, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

SQL Server 2017[Bearbeiten]

Die Version 2017 wurde am 2. Oktober 2017 freigegeben.<ref name="release2017">SQL Server Blog: SQL Server 2017 now Generally Available</ref>

Der SQL Server 2017 kann nun von mehreren Linux-Distributionen, die auf Docker-Containern ausgeführt werden können, und SQL VM in Azure ausgeführt werden.<ref>Microsoft Cloud: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Die Unterstützung für Maschinelles Lernen wurde ausgebaut. Es wird als Sprache für die Datenanalyse nun R und Python unterstützt.

Die Engine beinhaltet nun auch eine automatische Datenbankoptimierung. Es gibt Erweiterungen von dynamischen Verwaltungsansichten und -funktionen sowie neue T-SQL-Textfunktionen.<ref>Prashanth Jayaram: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

SQL Server 2019[Bearbeiten]

Die Version 2019 wurde am 4. November 2019 freigegeben. Das Update auf SQL Server 2019 bietet nun Unternehmen eine Umgebung, um mit umfangreichen Datenmengen und Big-Data-Clustern umzugehen. Die Datenvirtualisierung mit PolyBase ermöglicht es, externe Datenquellen in SQL Server zu integrieren und abzufragen. Die Funktionen der intelligenten Datenbank verbessern die Leistung und Skalierbarkeit aller Datenbankworkloads, ohne Änderungen am Datenbankentwurf vorzunehmen. Neue Funktionen wie Batchmodus bei Rowstore, Inlining benutzerdefinierter Skalarfunktionen und Verzögerte Kompilierung von Tabellenvariablen verbessern die Leistung und Qualität des Abfrageplans.<ref name="SQL2019">Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Microsoft, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Die neuen Funktionen und Updates in SQL Server 2019 (15.x) betreffen verschiedene Bereiche, wie z. B. Überwachung, Entwicklungsumgebung, Graphdaten und Unicode-Unterstützung. Im Bereich der Überwachung gibt es Verbesserungen bei der Erfassung von Leistungsdaten für Datenbankworkloads sowie neue dynamische Verwaltungsfunktionen und Konfigurationen für die Datensammlung und das Profiling von Abfragen. In der Entwicklungsumgebung wurden Verbesserungen bei der Unterstützung von Graphdaten- und räumlichen Datentypen eingeführt. Außerdem gibt es ein neues Erweiterbarkeitsframework, das Entwicklern ermöglicht, die Sprache ihrer Wahl zu verwenden, um Einblicke in alle ihre Daten zu erhalten. Schließlich gibt es nun auch eine verbesserte Unicode-Unterstützung, einschließlich der Unterstützung der UTF-8-Zeichencodierung für Import- und Exportcodierung, Sortierung von Zeichenfolgendaten auf Datenbank- oder Spaltenebene sowie für externe PolyBase-Tabellen und Always Encrypted.<ref name="SQL2019"/>

SQL Server 2022[Bearbeiten]

Die Version 2022 wurde am 16. November 2022 freigegeben.<ref>Rohan Kumar: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Microsoft, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden. </ref>

Microsoft SQL Server 2022 (16.x) bietet eine Vielzahl neuer Funktionen und Updates in den Bereichen Analyse, Verfügbarkeit, Sicherheit und Zugriffssteuerung. Azure Synapse Link für SQL ermöglicht die Ausführung von Analyse-, Business Intelligence- und Machine Learning-Szenarien mit minimalen Auswirkungen auf Quelldatenbanken.<ref name="SQL2022">Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Microsoft, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Die Integration von Objektspeicher ermöglicht die Integration von SQL Server mit S3-konformem Objektspeicher, während die Datenvirtualisierung das Abfragen verschiedener Datentypen auf verschiedenen Datentypen von SQL Server ermöglicht.<ref name="SQL2022"/>

In Bezug auf die Verfügbarkeit gibt es ein Linkfeature für Azure SQL Managed Instance, die Möglichkeit zur Erstellung von eigenständigen und verteilten Verfügbarkeitsgruppen sowie verbesserte Sicherungsmetadaten.<ref name="SQL2022"/> Im Bereich Sicherheit gibt es Funktionen wie Microsoft Defender für Cloud, Microsoft Purview-Integration und Ledger. In Bezug auf die Zugriffssteuerung gibt es die Möglichkeit zur Authentifizierung über Azure Active Directory und Always Encrypted mit Secure Enclaves sowie neue präzise Berechtigungen und integrierte Rollen auf Serverebene.<ref name="SQL2022"/>

Editionen[Bearbeiten]

Abhängig von der Version des Microsoft SQL Servers gibt es verschiedene Editionen des Produkts. Die Editionen unterscheiden sich entweder in ihrem Funktionsumfang oder der maximalen Hardwareunterstützung. So steht höherwertigen Editionen der Zugriff auf mehr Arbeitsspeicher oder mehr Prozessoren zur Verfügung, wodurch sie mehr Leistung bieten. Der jeweilige Name einer Edition deutet dabei auf seinen angedachten Einsatzort, respektive Einsatzzweck hin. So wird beispielsweise die unter SQL Server 2008 teuerste Version Datacenter-Edition für große Rechenzentren verwendet, während die SQL Server Web Edition speziell für Webhoster oder Websites gedacht ist.

Die folgende Tabelle listet eine Übersicht verschiedener SQL-Server-Versionen und ihrer erhältlichen Editionen:

Version Enterprise Datacenter Business Intelligence Standard Express Workgroup Web Developer
SQL Server 2000<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld (MSDE)<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden. im Microsoft Download Center, abgerufen am 15. Februar 2013.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld
SQL Server 2005<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld
SQL Server 2008 / 2008 R2 Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2012<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2014<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2016<ref><templatestyles src="Webarchiv/styles.css" />Vorlage:Webarchiv/WaybackSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden., abgerufen am 8. Juni 2016</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2017<ref>[Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] Archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am 2017-10-04;.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2019<ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld
SQL Server 2022<ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld Vorlage:Nein-Feld Vorlage:Ja-Feld Vorlage:Ja-Feld

Express Edition[Bearbeiten]

Die Express Edition ist kostenlos erhältlich und besitzt deutliche Einschränkungen, z. B. in Bezug auf Redundanz, Funktionsumfang, maximal verwendbarem Speicher und CPU-Kernen pro Instanz sowie maximalem Speicherplatz je Datenbank. Die Grenzwerte wurden immer wieder erhöht:

Version CPU-Kerne je Instanz Speicher je Instanz Speicherplatz je Datenbank
2008 1 1 GB 4 GB
2008 R2<ref>Features Supported by the Editions of SQL Server 2008 R2</ref> 1 1 GB 10 GB
2012<ref>Features Supported by the Editions of SQL Server 2012</ref>, 2014<ref>Features Supported by the Editions of SQL Server 2014</ref> 4 (auf dem gleichen Sockel) 1 GB 10 GB
2016<ref>Editions and supported features of SQL Server 2016</ref>, 2019<ref>Editions and supported features of SQL Server 2019</ref>, 2022<ref>Editions and supported features of SQL Server 2022</ref> 4 (auf dem gleichen Sockel) 1,41 GB 10 GB
2025<ref>Microsoft: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> 4 (auf dem gleichen Sockel) 1,41 GB 50 GB

Das System kann mehr CPU-Kerne, CPU-Sockel und Arbeitsspeicher besitzen, diese werden von der Server Express Edition nicht genutzt.

Auch die Express Edition mit Advanced Services ist kostenlos erhältlich und besitzt u. a. eine Volltextsuche. Ab SQL Server 2025 (17.x) gibt es keine separate Version mit Advanced Services mehr, die „normale“ Express Edition umfasst alle Funktionen, die in der Express Edition mit Advanced Services verfügbar waren.

Datentypen[Bearbeiten]

Nachfolgend sind die von Microsoft SQL unterstützten Datentypen aufgelistet. Jeder der Typen unterstützt neben seinem Wertebereich noch den Nullwert. In Tabellenspalten kann er durch das Attribut NOT NULL ausgeschlossen werden. Bei der Erstellung von Schlüsselkandidaten (unique key constraints) zählt ein Nullwert in SQL Server wie jeder normale Wert; bei einem nicht zusammengesetzten Schlüsselkandidaten darf somit höchstens ein Nullwert in der Spalte vorkommen.<ref>UNIQUE Constraints</ref><ref>Zugriff auf SQL-Server nicht möglich</ref>

Gruppe Untergruppe Name Speicherbedarf in Byte Wertebereich Unterstützung Auflösung, Bemerkungen
Numerische Werte Ganzzahlig bit 0,125–1 0 bis 1 0 oder 1, bis zu 8 Spalten einer Tabelle teilen sich das Byte
tinyint 1 0 bis 255
smallint 2 −32768 bis 32767
int 4 −2147483648 bis 2147483647
bigint 8 −9223372036854775808 bis 9223372036854775807
Festkomma smallmoney 4 −214748,3648 bis 214748,3647 int / 10000
money 8 −922337203685477,5808 bis 922337203685477,5807 bigint / 10000
numeric(1–38,0–38), decimal(1–38,0–38) 5, 9, 13 oder 17 −1038 +1 bis 1038 −1 1. Parameter: Anzahl Stellen; 2. Parameter: davon Nachkommastellen
Gleit-/Fließkomma real, float(24) 4 −3,4038 bis 3,4038 IEEE 754, aber ohne −0, ±∞ und NaN
float, float(53) 8 −1,79308 bis 1,79308 IEEE 754, aber ohne −0, ±∞ und NaN
Datum und Zeit smalldatetime 4 1900-01-01 00:00 bis 2079-06-06 23:59 nur Minute
datetime 8 1753-01-01 00:00:00 bis 9999-12-31 23:59:59.997 1/300 s
datetime2(0–7) 6–8 0001-01-01 00:00:00 bis 9999-12-31 23:59:59.9999999 ab 2008
datetimeoffset(0–7) 8-10 0001-01-01 00:00:00 bis 9999-12-31 23:59:59.9999999 ab 2008 mit Zeitzone
date 3 0001-01-01 bis 9999-12-31 ab 2008 nur Tage
time(0–7) 3–5 00:00:00.0000000 bis 23:59:59.9999999 ab 2008 100 ns
Zeichenfolgen Nicht-Unicode char(1–8000) 1-8000 variable CodePage
varchar(1–8000) 1-8000 variable CodePage
varchar(max) 1 Byte–2 GB variable CodePage
text 16 Byte–2 GB Veraltet (ab 2012)<ref name="Deprecated2012" /> Alias: CLOB, variable CodePage
Unicode (UTF16) nchar(1–4000) 2–8000<ref>nchar und nvarchar (Transact-SQL)</ref> CodePage 1200 Unicode
nvarchar(1–4000) 2–8000 CodePage 1200 Unicode
nvarchar(max) 2 Byte–2 GB CodePage 1200 Unicode
ntext 16 Byte–2 GB Veraltet (ab 2012)<ref name="Deprecated2012" /> Alias: NCLOB, CodePage 1200 Unicode
Binär binary(1–8000) 1–8000
varbinary(1–8000) 1–8000
varbinary(max) 1 Byte–2 GB
image 16 Byte–2 GB Veraltet (ab 2012)<ref name="Deprecated2012" /> Alias: BLOB
Andere für Tabellen sqlvariant kann alles sein
xml hat Methoden
uniqueidentifier 16 GUID
timestamp 8 auto update, Datensatz Änderungs-Zähler, Bigint binär
geography ab 2008 hat Methoden
geometry ab 2008 Geometriedaten, hat Methoden
hierarchyid ab 2008 hat Methoden
nur Prozeduren cursor virtuelle Liste
table virtuelle Liste

Literatur[Bearbeiten]

SQL Server 2014
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
SQL Server 2012
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
SQL Server 2008
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.
Weitere
  • Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.

Weblinks[Bearbeiten]

Commons: Skriptfehler: Ein solches Modul „WLink“ ist nicht vorhanden. – Sammlung von Bildern, Videos und Audiodateien

Vorlage:Wikidata-Registrierung

Einzelnachweise[Bearbeiten]

<references responsive />