Heim  >  Artikel  >  Datenbank  >  Tutorial zum MySQL-Zeichensatz und zur Sortierreihenfolge

Tutorial zum MySQL-Zeichensatz und zur Sortierreihenfolge

巴扎黑
巴扎黑Original
2017-05-19 15:13:091994Durchsuche

Verwenden von Zeichensätzen und Sortierreihenfolge

MySQL unterstützt zahlreiche Zeichensätze. Um die vollständige Liste der unterstützten Zeichensätze anzuzeigen, verwenden Sie die folgende Anweisung:

Eingabe:

show character set;

Analyse: Diese Anweisung zeigt alle verfügbaren Zeichensätze und eine Beschreibung jedes Zeichensatzes an. Korrekturlesen durch Standard.

Um die vollständige Liste der unterstützten Korrekturlesungen anzuzeigen, verwenden Sie die folgende Anweisung:

Eingabe:

show collation;

Analyse: Diese Anweisung zeigt alle verfügbaren Korrekturlesungen an und zu denen sie gehören Zeichensatz anwenden. Sie können sehen, dass einige Zeichensätze mehr als eine Sortierung haben. Zum Beispiel verfügt latin1 über mehrere Kollatierungen für verschiedene europäische Sprachen, und viele Kollatierungen erscheinen zweimal, einmal unter Berücksichtigung der Groß-/Kleinschreibung (gekennzeichnet durch _cs) und einmal ohne Berücksichtigung der Groß-/Kleinschreibung (gekennzeichnet durch _ci).

Normalerweise definiert der Systemadministrator während der Installation einen Standardzeichensatz und eine Standardsortierung. Darüber hinaus können Sie beim Erstellen der Datenbank auch den Standardzeichensatz und die Standardsortierung angeben. Um den verwendeten Zeichensatz und die verwendete Sortierung zu bestimmen, können Sie die folgende Anweisung verwenden:

Geben Sie ein:

show variables like 'character%';
show variables like 'collation%';

Tatsächlich sind Zeichensätze selten serverweit (oder sogar datenbankweit) gültig. Einstellungen. Unterschiedliche Tabellen und sogar unterschiedliche Spalten erfordern möglicherweise unterschiedliche Zeichensätze, und beide können beim Erstellen der Tabelle angegeben werden.

Um den Zeichensatz und die Sortierung für die Tabelle anzugeben, verwenden Sie CREATE TABLE mit Klauseln:

Eingabe:

create table mytable
(
columnn1       int,
columnn2       varchar(10)
)default character set hebrew collate hebrew_general_ci;

Analyse: Diese Anweisung erstellt eine zweispaltige Tabelle und geben Sie einen Zeichensatz und eine Sortierfolge an.

In diesem Beispiel werden sowohl CHARACTER SET als auch COLLATE angegeben. Im Allgemeinen bestimmt MySQL wie folgt, welcher Zeichensatz und welche Sortierung verwendet werden soll.

1. Wenn sowohl CHARACTER SET als auch COLLATE angegeben sind, werden diese Werte verwendet.

2. Wenn nur CHARACTER SET angegeben ist, werden dieser Zeichensatz und seine Standardsortierung verwendet (wie in den Ergebnissen von SHOW CHARACTER SET gezeigt).

3. Wenn weder CHARACTER SET noch COLLATE angegeben sind, wird der Datenbankstandard verwendet.

Zusätzlich zur Möglichkeit, Zeichensätze und Tabellenbereiche für die Sortierung anzugeben, ermöglicht Ihnen MySQL auch, diese wie folgt pro Spalte festzulegen:

Eingabe:

create table mytable
(
columnn1       int,
columnn2       varchar(10),
columnn3       varchar(10) character set latin1 collate latin1_general_ci
latin_grneral_ci
)default character set hebrew collate hebrew_general_ci;

Analyse: Hier werden CHARACTER SET und COLLATE für die gesamte Tabelle sowie eine bestimmte Spalte angegeben.

Wie bereits erwähnt, spielt die Sortierung eine wichtige Rolle beim Sortieren der mit der ORDER BY-Klausel abgerufenen Daten. Wenn Sie eine bestimmte SELECT-Anweisung in einer anderen Sortierreihenfolge anordnen müssen als beim Erstellen der Tabelle, können Sie dies in der SELECT-Anweisung selbst tun:

Eingabe:

select * from customers order by lastname,firstname collate latin1_general_cs;

Analyse: Dieses SELECT wird mit COLLATE angegeben. Eine alternative Sortierreihenfolge (in diesem Fall Groß-/Kleinschreibung beachtende Sortierung). Dies wirkt sich natürlich auf die Reihenfolge aus, in der die Ergebnisse sortiert werden.

Temporäre Groß-/Kleinschreibung Die obige SELECT-Anweisung demonstriert eine Technik zum Durchführen einer Suche unter Berücksichtigung der Groß-/Kleinschreibung in einer Tabelle, bei der die Groß-/Kleinschreibung normalerweise nicht beachtet wird. Natürlich ist auch der umgekehrte Weg möglich.

Andere COLLATE-Klauseln von SELECT Zusätzlich zur hier gezeigten Verwendung in der ORDER BY-Klausel kann COLLATE auch in GROUP BY, HAVING, Aggregatfunktionen, Aliasen usw. verwendet werden.

Abschließend ist anzumerken, dass Zeichenfolgen bei unbedingtem Bedarf zwischen Zeichensätzen konvertiert werden können. Verwenden Sie dazu die Funktion Cast() oder Convert().

[Verwandte Empfehlungen]

1. MySQL-kostenloses Video-Tutorial

2. Einführung in den MySQL-Zeichensatz und die Korrekturlesereihenfolge

3. Detaillierte Erläuterung der MySQL-Transaktion zur Verwendung von Aufbewahrungspunkten und zum Ändern des Standard-Commit-Verhaltens

4. Detaillierte Erläuterung der COMMIT-Verwendung

5. Erläuterung von Beispielen für die MySQL-Transaktionsverarbeitung

Das obige ist der detaillierte Inhalt vonTutorial zum MySQL-Zeichensatz und zur Sortierreihenfolge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn