Beispielanalyse der MySQL-Variablenverwendung [Systemvariablen, Benutzervariablen]

Beispielanalyse der MySQL-Variablenverwendung [Systemvariablen, Benutzervariablen]

Dieser Artikel veranschaulicht anhand von Beispielen die Verwendung von MySQL-Variablen. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

In diesem Artikel:

  • Systemvariablen
  • Benutzervariablen
    • Lokale Variablen

Veröffentlichungsdatum: 18.04.2018


Systemvariablen:

  • Systemvariablen sind Variablen, die vom System vorab definiert wurden.
  • Systemvariablen haben im Allgemeinen eine besondere Bedeutung. Beispielsweise stellen einige Variablen Zeichensätze dar und andere Variablen repräsentieren bestimmte MySQL-Dateispeicherorte.
  • Zu den Systemvariablen zählen Variablen auf Sitzungsebene (Variablen, die wirksam werden, wenn die Sitzung verbunden ist, z. B. Namen) und globale Variablen (Variablen, die immer wirksam sind). [Globale Variablen und Sitzungsvariablen im System verwenden tatsächlich einen Satz von Variablen. Der Unterschied besteht darin, dass Sitzungsvariablen nur wirksam sind, wenn die Sitzung verbunden ist. 】
    • Zuweisung von Sitzungsvariablen: setze Variablennamen = Wert; [wie etwa die häufig verwendeten Set-Namen = "utf8";] oder setze @@Variablennamen = Wert
    • Zuweisung globaler Variablen: setze globalen Variablennamen = Wert;

Systemvariablen anzeigen:

  • Variablen anzeigen;

Aufrufen von Systemvariablen:

  • wählen Sie @@Variablennamen;

Benutzervariablen:

  • Benutzervariablen sind vom Benutzer definierte Variablen.
  • Um zwischen Systemvariablen und benutzerdefinierten Variablen zu unterscheiden, legt das System fest, dass benutzerdefinierte Variablen ein @-Symbol verwenden müssen
  • Die Variablen sind wie folgt definiert:
    • set @變量名=1
    • wählen Sie @Variablenname:=Wert;
    • Wert in @Variablenname auswählen;
  • Benutzervariablen können direkt verwendet werden, ohne deklariert zu werden, aber der Standardwert ist null.
  • Benutzervariablen sind Variablen auf Sitzungsebene und sind nur während der aktuellen Verbindung gültig.

Lokale Variablen:

  • Da lokale Variablen benutzerdefiniert sind, können sie als Benutzervariablen betrachtet werden [aber sie sind unterschiedlich, Sie müssen in lokalen Variablen kein @ verwenden].
  • Lokale Variablen werden im Allgemeinen in SQL-Anweisungsblöcken verwendet, z. B. in Blöcken gespeicherter Prozeduren, Triggerblöcken usw.
  • So definieren Sie lokale Variablen:
    • Verwenden Sie zunächst „declare“, um eine lokale Variable zu deklarieren. Auf den optionalen Standardwert kann ein Standardwert für die Variable folgen: [ Dies ist ein sehr wichtiger Schritt, da sie sonst als Benutzervariable festgelegt wird.] [Hinweis: Die Variablendeklarationsanweisung muss vor anderen Anweisungen wie Select-Anweisungen stehen.]
      • Beispiel: Deklarieren Sie myq int;
      • Beispiel: Deklarieren Sie myq int default 666;
    • Legen Sie den Wert der Variablen fest:
      • Variablennamen = Wert festlegen;
    • Den Wert einer Variablen abrufen:
      • Variablennamen auswählen;
Prozedur myset() erstellen
beginnen 
 deklariere mya int;
 Deklariere myq int default 777;
 wähle mya, myq;
 setze myq=6;
 setze mya=666;
 wähle mya, myq;
Ende;

rufe myset() auf;

Auffüllen:

  • Einige Leute stellen möglicherweise fest, dass durch das direkte Festlegen von Variablenname = Wert auch „Benutzervariablen“ definiert werden können. Dies ist jedoch ein schlechtes Verhalten [dieses Verhalten ignoriert die Funktion jeder Variablen], da Sie nicht wissen, ob es zu Konflikten mit Systemvariablen kommt. Daher ist es am besten, @ zu Benutzervariablen hinzuzufügen .
  • Da = an vielen Stellen verwendet wird, um zu bestimmen, ob es gleich ist, können Sie zur Vermeidung von Mehrdeutigkeiten auch := verwenden, um Werte zuzuweisen image
  • [ Obwohl oben einige andere Zuweisungsmethoden angegeben sind, scheinen einige davon nicht universell zu sein, wie z. B. :=, das nur für Benutzervariablen verwendet wird. Verwenden Sie sie daher mit Vorsicht ].

Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen ansehen: „Zusammenfassung der allgemeinen MySQL-Funktionen“, „Zusammenfassung der Kenntnisse zu MySQL-Protokollvorgängen“, „Zusammenfassung der Kenntnisse zu MySQL-Transaktionsvorgängen“, „Zusammenfassung der Kenntnisse zu gespeicherten MySQL-Prozeduren“ und „Zusammenfassung der Kenntnisse zu MySQL-Datenbanksperren“.

Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist.

Das könnte Sie auch interessieren:
  • Beispiel für das Schreiben von Lazy UNION in MySQL unter Verwendung benutzerdefinierter Variablen
  • Detaillierte Erläuterung der MySQL-Benutzervariablen und Set-Anweisungsbeispiele
  • MySQL-Variablenprinzipien und Anwendungsbeispiele
  • Detaillierte Erläuterung der MySQL-Startoptionen und Beispiele für Systemvariablen
  • So erstellen (CREATE PROCEDURE) und rufen (CALL) Sie eine gespeicherte MySQL-Prozedur auf und so erstellen (DECLARE) und weisen (SET) Sie eine Variable zu
  • 15 wichtige Variablen, die Sie zur MySQL-Leistungsoptimierung kennen müssen (Zusammenfassung)
  • Tutorial zur Installation und Konfiguration von MySQL 8.0.12 unter Win10
  • Detaillierte Erläuterung zweier Methoden zum Festlegen globaler Variablen und Sitzungsvariablen in MySQL
  • MySQL 5.6.23 Installations- und Konfigurations-Umgebungsvariablen-Tutorial
  • Das Konzept und die Eigenschaften von benutzerdefinierten MySQL-Variablen

<<:  So finden Sie identische Dateien in Linux

>>:  Implementierungsbeispiel für Scan-Code-Zahlung im Vue-Projekt (mit Demo)

Artikel empfehlen

jQuery implementiert Warenkorbfunktion

In diesem Artikelbeispiel wird der spezifische Co...

So installieren Sie mehrere mysql5.7.19 (tar.gz)-Dateien unter Linux

Informationen zur ersten Installation der MySQL-5...

mysql teilt eine Datenzeile basierend auf Kommas in mehrere Zeilen auf

Inhaltsverzeichnis Trennwirkung Erläuterung der B...

CSS, um horizontale Linien auf beiden Seiten des mittleren Textes zu erreichen

1. Die Eigenschaft „vertical-align“ erzielt folge...

Border-Radius IE8-kompatible Verarbeitungsmethode

Laut canisue (http://caniuse.com/#search=border-r...

Detaillierte Erläuterung der benutzerdefinierten Vue-Anweisungen

Inhaltsverzeichnis Benutzerdefinierte Vue-Direkti...

Die Lösung von html2canvas, dass Bilder nicht normal erfasst werden können

Frage Lassen Sie mich zunächst über das Problem s...

Lösen Sie das Problem der Containerverwaltung mit Docker Compose

Im Docker-Design führt ein Container nur eine Anw...

Ubuntu 16.04 Installations-Tutorial unter VMware 12

In diesem Artikel finden Sie das Installations-Tu...

Erfahrungsaustausch durch einen Frontend-Supervisor mit 7 Jahren Praxiserfahrung

Heute teile ich die wertvollen Erfahrungen eines ...

Detaillierte Erklärung der KeepAlive-Verwendung in der Vue-Frontend-Entwicklung

Inhaltsverzeichnis Vorwort Keep-Avlive-Hook-Funkt...

Vier Modi zum Öffnen und Schließen von Oracle

>1 Starten Sie die Datenbank Geben Sie im cmd-...