Freigeben über


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

Einschränkungen

  • Windows-Nur-Unicode-Sortierungen können nur mit der COLLATE-Klausel verwendet werden, um Sortierungen auf die Datentypen nchar, nvarchar und ntext 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- und ntext-Spalten in Systemtabellen erhalten die neue Sortierung.

    • Sämtliche vorhandene char-, varchar-, text-, nchar-, nvarchar- und ntext-Parameter und skalare Rückgabewerte für gespeicherte Prozeduren und benutzerdefinierte Funktionen erhalten die neue Sortierung.

    • Die char-, varchar-, text-, nchar-, nvarchar- und ntext-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

  1. Stellen Sie im Objekt-Explorereine Verbindung mit einer Instanz von SQL Server-Datenbank-Engineher, erweitern Sie diese Instanz und dann Datenbanken.

  2. 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.

  3. Wenn Sie fertig sind, klicken Sie auf OK.

Verwenden von Transact-SQL

So legen Sie die Datenbanksortierung fest

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. 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 Sortierung Latin1_General_100_CS_AS_SC verwendet. Nachdem Sie die Datenbank erstellt haben, führen Sie die SELECT -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

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. 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)