Festlegen oder Ändern der Datenbanksortierung
In diesem Thema wird beschrieben, wie die Datenbanksortierung in SQL Server 2014 mithilfe von SQL Server Management Studio oder Transact-SQL festgelegt und geändert wird. Wenn keine Sortierung angegeben wird, wird die Sortierung des Servers verwendet.
In diesem Thema
Vorbereitungen:
Festlegen oder Ändern der Datenbanksortierung mit:
Vorbereitungen
Einschränkungen
Windows-Nur-Unicode-Sortierungen können nur mit der COLLATE-Klausel verwendet werden, um Sortierungen auf die Datentypen
nchar
,nvarchar
undntext
bei Daten auf Spalten- und Ausdrucksebene anzuwenden. Sie können nicht mit der COLLATE-Klausel verwendet werden, um die Sortierung einer Datenbank oder Serverinstanz zu ändern.Wenn die angegebene Sortierung oder die Sortierung, die vom objekt verwendet wird, auf das verwiesen wird, eine Codepage verwendet, die von Windows nicht unterstützt wird, zeigt die Datenbank-Engine einen Fehler an.
Empfehlungen
Die Namen der unterstützten Sortierungen finden Sie unter Name der Windows-Sortierung (Transact-SQL) und SQL Server-Sortierungsname (Transact-SQL). Alternativ können Sie die Systemfunktion sys.fn_helpcollations (Transact-SQL) verwenden.
Das Ändern der Datenbanksortierung ändert Folgendes:
Alle
char
-,varchar
-,text
-,nchar
-,nvarchar
- undntext
-Spalten in Systemtabellen erhalten die neue Sortierung.Sämtliche vorhandene
char
-,varchar
-,text
-,nchar
-,nvarchar
- undntext
-Parameter und skalare Rückgabewerte für gespeicherte Prozeduren und benutzerdefinierte Funktionen erhalten die neue Sortierung.Die
char
-,varchar
-,text
-,nchar
-,nvarchar
- undntext
-Systemdatentypen sowie alle benutzerdefinierten Datentypen, die auf Systemdatentypen basieren, erhalten die neue Sortierung.
Sie können die Sortierung von neuen Objekten, die in einer Benutzerdatenbank erstellt werden, mithilfe der COLLATE-Klausel der ALTER DATABASE -Anweisung ändern. Diese Anweisung ändert jedoch nicht die Sortierung der Spalten in vorhandenen benutzerdefinierten Tabellen. Letztere können mithilfe der COLLATE-Klausel der ALTER TABLE-Anweisung geändert werden.
Sicherheit
Berechtigungen
CREATE DATABASE
Erfordert die CREATE DATABASE-Berechtigung in der master-Datenbank oder die Berechtigung CREATE ANY DATABASE oder ALTER ANY DATABASE.
ALTER DATABASE
Erfordert die ALTER-Berechtigung für die Datenbank.
Verwendung von SQL Server Management Studio
So legen Sie die Datenbanksortierung oder ändern sie
Stellen Sie im Objekt-Explorereine Verbindung mit einer Instanz von SQL Server-Datenbank-Engineher, erweitern Sie diese Instanz und dann Datenbanken.
Wenn Sie eine neue Datenbank erstellen, klicken mit der rechten Maustaste auf Datenbanken , und klicken Sie anschließend auf Neue Datenbank. Wenn Sie die Standardsortierung nicht möchten, klicken auf die Seite Optionen , und wählen aus der Dropdownliste Sortierung eine Sortierung aus.
Wenn eine Datenbank bereits vorhanden ist, können Sie alternativ mit der rechten Maustaste auf die Datenbank klicken, die geändert werden soll, und auf Eigenschaftenklicken. Klicken Sie auf die Seite Optionen , und wählen Sie aus der Dropdownliste Sortierung eine Sortierung aus.
Wenn Sie fertig sind, klicken Sie auf OK.
Verwenden von Transact-SQL
So legen Sie die Datenbanksortierung fest
Stellen Sie eine Verbindung mit dem Datenbank-Engineher.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird gezeigt, wie die COLLATE-Klausel verwendet wird, um einen Sortierungsnamen anzugeben. Im folgenden Beispiel wird die Datenbank mit dem Namen
MyOptionsTest
erstellt, die die SortierungLatin1_General_100_CS_AS_SC
verwendet. Nachdem Sie die Datenbank erstellt haben, führen Sie dieSELECT
-Anweisung aus, um die Einstellung zu überprüfen.
USE master;
GO
IF DB_ID (N'MyOptionsTest') IS NOT NULL
DROP DATABASE MyOptionsTest;
GO
CREATE DATABASE MyOptionsTest
COLLATE Latin1_General_100_CS_AS_SC;
GO
--Verify the collation setting.
SELECT name, collation_name
FROM sys.databases
WHERE name = N'MyOptionsTest';
GO
So ändern Sie die Datenbanksortierung
Stellen Sie eine Verbindung mit dem Datenbank-Engineher.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird gezeigt, wie die COLLATE-Klausel in einer ALTER DATABASE -Anweisung verwendet wird, um den Sortierungsnamen zu ändern. Führen Sie die
SELECT
-Anweisung aus, um die Änderung zu überprüfen.
USE master;
GO
ALTER DATABASE MyOptionsTest
COLLATE French_CI_AS ;
GO
--Verify the collation setting.
SELECT name, collation_name
FROM sys.databases
WHERE name = N'MyOptionsTest';
GO
Weitere Informationen
Collation and Unicode Support
sys.fn_helpcollations (Transact-SQL)
sys.databases (Transact-SQL)
SQL Server-Sortierungsname (Transact-SQL)
Name der Windows-Sortierung (Transact-SQL)
COLLATE (Transact-SQL)
Rangfolge von Sortierungen (Transact-SQL)
CREATE TABLE (Transact-SQL)
CREATE DATABASE (SQL Server Transact-SQL)
ALTER TABLE (Transact-SQL)
ALTER DATABASE (Transact-SQL)