VERSION() în MySQL

Returnează versiunea serverului MySQL, ca text (de exemplu 8.4.6).

Sintaxă
VERSION()

Ce face VERSION()

VERSION() spune ce versiune de MySQL rulează pe server. Textul poate avea și un sufix, de exemplu 8.0.36-log sau 8.4.6-0ubuntu, în funcție de cum a fost instalat serverul. Aceeași valoare se găsește în variabila de sistem @@version.

Funcția e utilă în scripturi de instalare sau de migrare, care trebuie să știe dacă serverul are o anumită funcție (de exemplu, funcțiile de fereastră există doar din MySQL 8.0).

Ce returnează

Un text cu versiunea serverului.

Exemple

Exemplul 1: Versiunea serverului

SELECT VERSION();

Rezultat în MySQL 8.4 (diferă de la server la server)

+-----------+
| VERSION() |
+-----------+
| 8.4.6     |
+-----------+

Exemplul 2: Aceeași valoare ca variabila @@version

SELECT VERSION() = @@version AS identice;

Rezultat

+----------+
| identice |
+----------+
|        1 |
+----------+

Exemplul 3: Verificarea versiunii principale

Prima parte a textului, până la primul punct, este versiunea principală. O transformăm în număr ca să o putem compara.

SELECT CAST(SUBSTRING_INDEX(VERSION(), '.', 1) AS UNSIGNED) >= 8 AS cel_putin_mysql_8;

Rezultat

+-------------------+
| cel_putin_mysql_8 |
+-------------------+
|                 1 |
+-------------------+

Greșeli frecvente

  • Compari versiunile ca texte: '8.4.6' > '10.1' este adevărat, pentru că textele se compară caracter cu caracter. Desparte versiunea în numere înainte să compari.
  • Presupui că serverul este MySQL. MariaDB răspunde de exemplu cu 10.11.6-MariaDB; caută textul MariaDB în rezultat dacă aplicația ta suportă ambele.

Comenzi înrudite

  • ICU_VERSION(): Returnează versiunea bibliotecii ICU folosite de MySQL pentru expresiile regulate.
  • USER(): Returnează utilizatorul și calculatorul de pe care s-a conectat clientul, ca text „nume@gazdă”.
  • DATABASE(): Returnează numele bazei de date curente (aleasă cu USE) sau NULL dacă nu e aleasă niciuna.