Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sortierreihenfolgen werden von SQLite beim Vergleichen von TEXT-Werten verwendet, um die Reihenfolge und Gleichheit zu bestimmen. Sie können angeben, welche Sortierung beim Erstellen von Spalten oder pro Vorgang in SQL-Abfragen verwendet werden soll. SQLite enthält standardmäßig drei Sortierreihenfolgen.
Sortierung | BESCHREIBUNG |
---|---|
RTRIM | Ignoriert nachfolgende Leerzeichen. |
NOCASE | Groß-/Kleinschreibung für ASCII-Zeichen A bis Z wird nicht beachtet |
BINÄR | Groß-/Kleinschreibung wird beachtet, Vergleicht Bytes direkt |
Benutzerdefinierte Sortierung
Sie können auch eigene Sortiersequenzen definieren oder die integrierten mit CreateCollation überschreiben. Das folgende Beispiel zeigt, wie die NOCASE-Sortierung außer Kraft gesetzt wird, um Unicode-Zeichen zu unterstützen. Der vollständige Beispielcode ist auf GitHub verfügbar.
connection.CreateCollation("NOCASE", (x, y) => string.Compare(x, y, ignoreCase: true));
var queryCommand = connection.CreateCommand();
queryCommand.CommandText =
@"
SELECT count()
FROM greek_letter
WHERE value = 'λ' COLLATE NOCASE
";
var oCount = queryCommand.ExecuteScalar();
var count = (oCount is not null) ? (int)oCount : -1;
Like-Operator
Der LIKE-Operator in SQLite berücksichtigt keine Kollationen. Die Standardimplementierung weist die gleiche Semantik wie die NOCASE-Sortierung auf. Nur für die ASCII-Zeichen A bis Z wird die Groß-/Kleinschreibung beachtet.
Mithilfe der folgenden Pragmaanweisung wird bei Verwendung des LIKE-Operators die Groß-/Kleinschreibung berücksichtigt:
PRAGMA case_sensitive_like = 1
Details zum Überschreiben der Implementierung des LIKE-Operators finden Sie unter benutzerdefinierte Funktionen .