Catégories :

Fonctions système (Informations système)

SYSTEM$CLIENT_VERSION_INFO

Renvoie des informations sur la version des clients et des pilotes Snowflake.

Voir aussi :

Versions client et politique de prise en charge

Syntaxe

SYSTEM$CLIENT_VERSION_INFO()
Copy

Arguments

Aucun

Renvoie

Renvoie une chaîne contenant un tableau d’objets JSON. Chaque objet contient des informations sur un client et un pilote spécifiques, comme SnowSQL, le pilote JDBC, etc.

Chaque objet JSON contient les paires nom/valeur suivantes :

{
  "clientId": "DOTNETDriver",
  "clientAppId": ".NET",
  "minimumSupportedVersion": "2.0.9",
  "minimumNearingEndOfSupportVersion": "2.0.11",
  "recommendedVersion": "2.1.5",
  "deprecatedVersions": [],
  "_customSupportedVersions_": []
},
Copy

Où :

clientId

ID interne du client ou du pilote. Les valeurs possibles sont les suivantes :

  • DOTNETDriver

  • GO

  • JDBC

  • JSDriver

  • ODBC

  • PHP_PDO

  • PythonConnector

  • SnowSQL

  • SQLAPI

clientAppId

Nom du client ou du pilote. Les valeurs possibles sont les suivantes :

  • .NET

  • GO

  • JDBC

  • JavaScript

  • ODBC

  • PDO

  • PythonConnector

  • SnowSQL

  • SQLAPI

minimumSupportedVersion

Version la plus ancienne du client ou du pilote officiellement prise en charge.

minimumNearingEndOfSupportVersion

Version du client ou du pilote qui arrive en fin de prise en charge (end-of-support ou EOS) au début du trimestre suivant.

recommendedVersion

Version actuelle du client ou du pilote.

deprecatedVersions, _customSupportedVersions_

Usage interne uniquement.

Notes sur l’utilisation

  • Si vous préférez ne pas traiter JSON, vous pouvez utiliser les fonctions PARSE_JSON et LATERAL FLATTEN pour convertir la valeur JSON en sortie sous forme de colonne.

  • Vous pouvez également utiliser la clause WHERE pour renvoyer les informations relatives à un client ou à un pilote spécifique (clientId).

Exemples

L’exemple suivant permet de récupérer les informations de version de tous les clients et pilotes Snowflake. Notez que la sortie a été formatée manuellement pour une meilleure lisibilité.

SELECT SYSTEM$CLIENT_VERSION_INFO();
Copy
[
  {
    "clientId": "DOTNETDriver",
    "clientAppId": ".NET",
    "minimumSupportedVersion": "2.0.9",
    "minimumNearingEndOfSupportVersion": "2.0.11",
    "recommendedVersion": "2.1.5",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "GO",
    "clientAppId": "Go",
    "minimumSupportedVersion": "1.6.6",
    "minimumNearingEndOfSupportVersion": "1.6.9",
    "recommendedVersion": "1.7.1",
    "deprecatedVersions": [],
    "_customSupportedVersions_": [
      "1.1.5"
    ]
  },
  {
    "clientId": "JDBC",
    "clientAppId": "JDBC",
    "minimumSupportedVersion": "3.13.14",
    "minimumNearingEndOfSupportVersion": "3.13.18",
    "recommendedVersion": "3.14.4",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "JSDriver",
    "clientAppId": "JavaScript",
    "minimumSupportedVersion": "1.6.6",
    "minimumNearingEndOfSupportVersion": "1.6.9",
    "recommendedVersion": "1.9.2",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "ODBC",
    "clientAppId": "ODBC",
    "minimumSupportedVersion": "2.24.5",
    "minimumNearingEndOfSupportVersion": "2.24.7",
    "recommendedVersion": "3.1.4",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "PHP_PDO",
    "clientAppId": "PDO",
    "minimumSupportedVersion": "1.2.0",
    "minimumNearingEndOfSupportVersion": "1.2.1",
    "recommendedVersion": "2.0.1",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "PythonConnector",
    "clientAppId": "PythonConnector",
    "minimumSupportedVersion": "2.7.3",
    "minimumNearingEndOfSupportVersion": "2.7.7",
    "recommendedVersion": "3.6.0",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "SnowSQL",
    "clientAppId": "SnowSQL",
    "minimumSupportedVersion": "1.2.21",
    "minimumNearingEndOfSupportVersion": "1.2.21",
    "recommendedVersion": "1.2.31",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  },
  {
    "clientId": "SQLAPI",
    "clientAppId": "SQLAPI",
    "minimumSupportedVersion": "1.0.0",
    "minimumNearingEndOfSupportVersion": "",
    "recommendedVersion": "",
    "deprecatedVersions": [],
    "_customSupportedVersions_": []
  }
]

L’exemple suivant renvoie les informations de version de tous les clients sous la forme d’un ensemble de lignes :

WITH output AS (
  SELECT
    PARSE_JSON(SYSTEM$CLIENT_VERSION_INFO()) a
)
SELECT
    value:clientAppId::STRING AS client_app_id,
    value:minimumSupportedVersion::STRING AS minimum_version,
    value:minimumNearingEndOfSupportVersion::STRING AS near_end_of_support_version,
    value:recommendedVersion::STRING AS recommended_version
  FROM output r,
    LATERAL FLATTEN(INPUT => r.a, MODE =>'array');
Copy
+-----------------+-----------------+-----------------------------+---------------------+
| CLIENT_APP_ID   | MINIMUM_VERSION | NEAR_END_OF_SUPPORT_VERSION | RECOMMENDED_VERSION |
|-----------------+-----------------+-----------------------------+---------------------|
| .NET            | 2.0.9           | 2.0.11                      | 2.1.5               |
| Go              | 1.6.6           | 1.6.9                       | 1.7.1               |
| JDBC            | 3.13.14         | 3.13.18                     | 3.14.4              |
| JavaScript      | 1.6.6           | 1.6.9                       | 1.9.2               |
| ODBC            | 2.23.5          | 2.24.7                      | 3.1.4               |
| PDO             | 1.2.0           | 1.2.1                       | 2.0.1               |
| PythonConnector | 2.7.3           | 2.7.7                       | 3.6.0               |
| SnowSQL         | 1.2.21          | 1.2.21                      | 1.2.31              |
| SQLAPI          | 1.0.0           |                             |                     |
+-----------------+-----------------+-----------------------------+---------------------+

L’exemple suivant renvoie les informations de version du pilote JDBC sous la forme d’un ensemble de lignes :

WITH output AS (
  SELECT
    PARSE_JSON(SYSTEM$CLIENT_VERSION_INFO()) a
)
SELECT
    value:clientId::STRING AS client_id,
    value:minimumSupportedVersion::STRING AS minimum_version,
    value:minimumNearingEndOfSupportVersion::STRING AS near_end_of_support_version,
    value:recommendedVersion::STRING AS recommended_version
  FROM output r,
    LATERAL FLATTEN(INPUT => r.a, MODE =>'array')
  WHERE client_id = 'JDBC';
Copy
+-----------+-----------------+-----------------------------+---------------------+
| CLIENT_ID | MINIMUM_VERSION | NEAR_END_OF_SUPPORT_VERSION | RECOMMENDED_VERSION |
|-----------+-----------------+-----------------------------+---------------------|
| JDBC      | 3.13.14         | 3.13.18                     | 3.14.4              |
+-----------+-----------------+-----------------------------+---------------------+