Heim > Datenbank > MySQL-Tutorial > Wie deklariere und verwende ich benutzerdefinierte, lokale und Serversystemvariablen in MySQL?

Wie deklariere und verwende ich benutzerdefinierte, lokale und Serversystemvariablen in MySQL?

DDD
Freigeben: 2025-01-22 03:26:15
Original
824 Leute haben es durchsucht

How to Declare and Use User-Defined, Local, and Server System Variables in MySQL?

Detaillierte Erklärung und Anwendung von MySQL-Variablen

Variablen in MySQL sind Container, die vorübergehend Werte für die Dauer der Abfrageausführung speichern. Es gibt drei Haupttypen: benutzerdefinierte Variablen, lokale Variablen und Serversystemvariablen.

Benutzerdefinierte Variablen (@ Präfix)

  • Erklärung: Keine explizite Erklärung erforderlich
  • Anfangswert: NULL
  • Datentyp: Ganzzahl, Dezimalzahl, Gleitkomma, Zeichenfolge oder NULL
  • Geltungsbereich: Sitzungsebene

Benutzerdefinierte Variablen initialisieren:

<code class="language-sql">SET @start = 1, @finish = 10;</code>
Nach dem Login kopieren

Beispiel: Verwendung benutzerdefinierter Variablen in einer SELECT-Abfrage

<code class="language-sql">SELECT * FROM places WHERE place BETWEEN @start AND @finish;</code>
Nach dem Login kopieren

Lokale Variablen (kein Präfix)

  • Anweisung: DECLARE-Anweisung muss verwendet werden
  • Anfangswert: NULL, wenn die DEFAULT-Klausel weggelassen wird
  • Datentyp: Ganzzahl, Dezimalzahl, Zeichenfolge oder NULL
  • Geltungsbereich: beschränkt auf den BEGIN...END-Block, in dem sie deklariert sind

Lokale Variablen in gespeicherten Prozeduren deklarieren und initialisieren:

<code class="language-sql">DECLARE start INT unsigned DEFAULT 1;  
DECLARE finish INT unsigned DEFAULT 10;</code>
Nach dem Login kopieren

Beispiel: Verwendung lokaler Variablen in gespeicherten Prozeduren

<code class="language-sql">CREATE PROCEDURE sp_test(var1 INT) 
BEGIN   
    DECLARE start  INT unsigned DEFAULT 1;  
    DECLARE finish INT unsigned DEFAULT 10;

    SELECT  var1, start, finish;

    SELECT * FROM places WHERE place BETWEEN start AND finish; 
END; </code>
Nach dem Login kopieren

Serversystemvariablen (@@ Präfix)

  • Erklärung: Keine explizite Erklärung erforderlich
  • Anfangswert: Vom MySQL-Server festgelegter Standardwert
  • Datentyp: abhängig von der Variablen
  • Geltungsbereich: global (serverweit) oder Sitzungsebene

Sehen Sie sich die aktuellen Werte der Serversystemvariablen an:

<code class="language-sql">SELECT @@sort_buffer_size;</code>
Nach dem Login kopieren

Ändern Sie den Wert der Serversystemvariablen:

<code class="language-sql">SET GLOBAL sort_buffer_size=1000000;</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie deklariere und verwende ich benutzerdefinierte, lokale und Serversystemvariablen in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage