So betreiben Sie eine MySql-Datenbank mit Gorm

So betreiben Sie eine MySql-Datenbank mit Gorm

1. Festlegen der Groß-/Kleinschreibung von Feldern in der Tabelle

Bei Verwendung einer Gorm-Abfrage können die Kontonamen A und a identisch sein, da MySQL standardmäßig nicht zwischen Groß- und Kleinschreibung unterscheidet.

1. Ursachen des Problems

MySQL unterscheidet unter Windows nicht zwischen Groß- und Kleinschreibung.
Die Groß-/Kleinschreibungsregeln für MySQL-Datenbanknamen, Tabellennamen, Spaltennamen und Aliase unter Linux lauten wie folgt:

1. Bei Datenbanknamen und Tabellennamen muss die Groß-/Kleinschreibung streng beachtet werden.
2. Beim Tabellenalias wird streng zwischen Groß- und Kleinschreibung unterschieden.
3. Bei Spaltennamen und Spaltenaliasnamen wird in allen Fällen die Groß-/Kleinschreibung nicht beachtet.
4. Auch bei Variablennamen muss die Groß-/Kleinschreibung streng beachtet werden.

MySQL berücksichtigt bei der Abfrage von Zeichenfolgen nicht die Groß-/Kleinschreibung. Beim Kompilieren von MySQL wird im Allgemeinen der ISO-8859-Zeichensatz als Standardzeichensatz verwendet. Dieser Zeichensatz berücksichtigt die Groß-/Kleinschreibung nicht. Daher verursacht die Konvertierung der Groß-/Kleinschreibung chinesischer codierter Zeichen während des Vergleichsvorgangs dieses Phänomen.

2. Sortierregeln in MySQL

utf8_bin speichert jedes Zeichen in einer Zeichenfolge als Binärdaten und unterscheidet zwischen Groß- und Kleinbuchstaben. utf8_genera_ci unterscheidet nicht zwischen Groß- und Kleinschreibung. ci ist die Abkürzung für case insensitive (Kassenschutz), was bedeutet, dass die Groß- und Kleinschreibung nicht berücksichtigt wird. utf8_general_cs unterscheidet zwischen Groß- und Kleinschreibung. cs ist die Abkürzung für „Case Sensitive“. ( Hinweis: In MySQL 5.6.10 wird utf8_genral_cs nicht unterstützt!!!

3. Lösung

1. Binäres Schlüsselwort

Ändern Sie einfach die SQL-Abfrageanweisung und fügen Sie das binäre Schlüsselwort vor dem abzufragenden Feld hinzu. (Nicht empfohlen)

1. Fügen Sie vor jeder Bedingung das Schlüsselwort „binary“ hinzu

Wählen Sie * vom Benutzer aus, wobei der binäre Benutzername = „admin“ und das binäre Passwort = „admin“ ist.

2. Umgeben Sie die Parameter mit binary('')

Wählen Sie * vom Benutzer aus, wobei der Benutzername wie binär('admin') und das Passwort wie binär('admin') ist.

2. Sortierungseigenschaften ändern

Wenn Sie eine Tabelle erstellen, legen Sie die Collate-Eigenschaft der Tabelle direkt auf utf8_general_cs oder utf8_bin fest. Wenn die Tabelle bereits erstellt wurde, ändern Sie die Collation-Eigenschaft des Felds direkt auf utf8_general_cs oder utf8_bin.

1. Ändern Sie die Tabellenstruktur

ALTER TABLE TABLENAME MODIFY COLUMN COLUMNNAME VARCHAR(50) BINARY CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL;

2. Felder ändern (verwenden Sie gorm , um die Felder in der Tabelle so einzustellen, dass die Groß- und Kleinschreibung beachtet wird)

`gorm:"unique" sql:"Typ:VARCHAR(255) Zeichensatz utf8 COLLATE utf8_bin"`

Dies ist das Ende dieses Artikels über die Verwendung von Gorm zum Bedienen einer MySql-Datenbank. Weitere Informationen zur Verwendung von Gorm zum Bedienen einer MySql-Datenbank finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Golang Gorm – Grundlegende Verwendung von MySQL und Gorm
  • Implementierung des gORM-Vorgangs auf MySQL

<<:  Unterschied zwischen HTML ReadOnly und Enabled

>>:  CSS und JS für eine romantische Meteorschauer-Animation

Artikel empfehlen

Über 3 gängige Pakete der REM-Anpassung

Vorwort Ich habe bereits einen Artikel über REM-A...

Beispiel für das Schreiben von mobilem H5 zum Aufrufen einer APP (IOS, Android)

iOS 1. URL-Schema Diese Lösung ist grundsätzlich ...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.22

Dieser Artikel dokumentiert die Installation und ...

Fügen Sie dem Debian-Docker-Container geplante Crontab-Aufgaben hinzu

Mittlerweile basieren die meisten Docker-Images a...

Hinzufügen und Löschen von Tabelleninformationen mit Javascript

Erste Schritte mit JavaScript JavaScript ist eine...

Instanzmethode für MySQL-String-Verkettung und Festlegen von Nullwerten

#String-Verkettung concat(s1,s2); verkette die St...