Heim  >  Artikel  >  Datenbank  >  So legen Sie den Größenunterschied in MySQL fest

So legen Sie den Größenunterschied in MySQL fest

PHPz
PHPzOriginal
2023-04-19 17:25:345975Durchsuche

MySQL-Datenbank ist ein häufig verwendetes relationales Datenbankverwaltungssystem, das zum Speichern und Zugreifen auf Daten in Webanwendungen verwendet wird. Bei Datentabellen in MySQL wird die Groß-/Kleinschreibung nicht beachtet, was bedeutet, dass bei Abfragen die Groß-/Kleinschreibung nicht beachtet wird. In manchen Fällen ist es jedoch erforderlich, dass MySQL die Groß-/Kleinschreibung beachtet. In diesem Fall müssen entsprechende Einstellungen vorgenommen werden. In diesem Artikel erfahren Sie, wie Sie die Groß-/Kleinschreibung in MySQL festlegen.

1. Das Prinzip der Groß-/Kleinschreibung in MySQL

In MySQL wird ein Name nur als Zeichen betrachtet, nicht als Wort oder Phrase der Sprache. Daher verwendet MySQL keine Groß-/Kleinschreibung, um den Unterschied zwischen Namen zu bestimmen. Beispielsweise behandelt MySQL „table1“ und „Table1“ als denselben Namen.

2. Stellen Sie die MySQL-Groß- und Kleinschreibung ein.

  1. In der my.cnf-Konfigurationsdatei festlegen

Öffnen Sie meine .cnf-Datei Konfigurationsdatei. Falls diese nicht vorhanden ist, erstellen Sie eine neue Datei. Fügen Sie der Datei den folgenden Code hinzu:

[mysqld]
lower_case_table_names=1

Speichern Sie die Datei und starten Sie den MySQL-Server neu. Sie können MySQL die Groß-/Kleinschreibung erzwingen lassen, indem Sie „lower_case_table_names“ auf 1 setzen. Wenn es auf 0 gesetzt ist, unterscheidet MySQL nicht zwischen Groß- und Kleinschreibung und der Standardwert ist 0.

  1. In der Befehlszeile festlegen

Benutzer, die keine Berechtigung zum Ändern der MySQL-Konfigurationsdatei haben, können diese in MySQL festlegen Befehlszeile. Verwenden Sie den folgenden Befehl in der Befehlszeile:

SET GLOBAL lower_case_table_names=1;

Dadurch wird der Parameter „lower_case_table_names“ global auf dem MySQL-Server auf 1 gesetzt. Diese Einstellung bleibt über alle Neustarts des MySQL-Servers hinweg bestehen.

Kann auch in der aktuellen Sitzung mit dem folgenden Befehl festgelegt werden:

SET SESSION lower_case_table_names=1;

Dadurch wird der Parameter „lower_case_table_names“ in der aktuellen Sitzung auf 1 gesetzt. Diese Einstellung läuft am Ende der aktuellen Sitzung ab.

3. Hinweise

  1. Die Verwendung des Parameters „lower_case_table_names=1“ führt dazu, dass die Groß- und Kleinschreibung sensibler Tabellennamen in Kleinbuchstaben umgewandelt wird. Wenn zwei Tabellen den gleichen Namen haben, aber in unterschiedlicher Groß-/Kleinschreibung geschrieben werden, werden sie zur gleichen Tabelle, wenn „lower_case_table_names=1“ ist. Daher müssen Sie den Tabellennamen sorgfältig auswählen, wenn Sie diesen Parameter verwenden.
  2. Mit Lower_case_table_names=1 können nicht-binäre Sortier- oder Suchregeln, bei denen die Groß-/Kleinschreibung beachtet wird, wie z. B. utf8_bin, nicht verwendet werden. Dies liegt daran, dass „lower_case_table_names=1“ alle Zeichen in Kleinbuchstaben umwandelt, was dazu führt, dass die Groß-/Kleinschreibung beim Sortieren oder die Suchregeln nicht funktionieren.
  3. Mit Lower_case_table_names=1 ist die Zeichensatzfunktion, bei der die Groß-/Kleinschreibung beachtet wird, nicht verfügbar. Beispielsweise gibt cs in den Zeichensätzen „latin1_cs“ oder „utf8_cs“ die Groß-/Kleinschreibung an, aber „lower_case_table_names=1“ erzwingt die Konvertierung aller Zeichen in Kleinbuchstaben, sodass die Regeln zur Groß-/Kleinschreibung nicht funktionieren.

4. Zusammenfassung

Die Standardeinstellung der MySQL-Datenbank unterscheidet nicht zwischen Groß- und Kleinschreibung. Wenn Sie jedoch beim Abfragen auf Groß- und Kleinschreibung achten müssen, können Sie „lower_case_table_names“ in der Konfigurationsdatei „my.cnf“ auf 1 setzen oder die SET-Anweisung in der MySQL-Befehlszeile verwenden. Es ist jedoch zu beachten, dass es bei der Verwendung von „lower_case_table_names=1“ einige Einschränkungen gibt, die zu Problemen führen können, wenn der Tabellenname oder der Zeichensatz nicht sorgfältig ausgewählt werden. Daher muss es mit Vorsicht verwendet werden.

Das obige ist der detaillierte Inhalt vonSo legen Sie den Größenunterschied in MySQL fest. 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