Festlegen oder Ändern der Datenbanksortierung

 

Veröffentlicht: September 2016

In diesem Thema wird beschrieben, wie die Datenbanksortierung in SQL Server 2016 mithilfe von SQL Server Management Studio oder Transact-SQLfestgelegt und geändert werden kann. Wenn keine Sortierung angegeben wird, wird die Sortierung des Servers verwendet.

In diesem Thema

Einschränkungen

  • Nur-Unicode-Sortierungen unter Windows, können nur mit der COLLATE-Klausel verwendet werden, um auf Spalten- und Ausdrucksebene Sortierungen auf die Datentypen nchar, nvarchar und ntext 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 des Objekts, auf das verwiesen wird, eine Codepage verwendet, die nicht von Windows unterstützt wird, zeigt Datenbankmodul 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 Systemdatentypen char, varchar, text, nchar oder nvarchar oder ntext sowie alle benutzerdefinierten Datentypen, die auf Systemdatentypen basieren, erhalten die neue Standardsortierung.

  • 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 Berechtigung CREATE DATABASE in der master-Datenbank oder die Berechtigungen CREATE ANY DATABASE oder ALTER ANY DATABASE.

ALTER DATABASE
Erfordert die ALTER-Berechtigung für die Datenbank.

So legen Sie die Datenbanksortierung oder ändern sie

  1. Stellen Sie im Objekt-Explorereine Verbindung mit einer Instanz von SQL Server-Datenbankmodulher, 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 Eigenschaften klicken. 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.

So legen Sie die Datenbanksortierung fest

  1. Stellen Sie eine Verbindung mit dem Datenbankmodulher.

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

  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  
  

Sortierung und Unicode-Unterstützung
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)

Community-Beiträge

HINZUFÜGEN
Anzeigen: