Cette page a été traduite de l'anglais avec l'aide de l'IA. En cas de divergence, la version anglaise fait référence.
MD5
Renvoie l'empreinte MD5 d'une chaîne de caractères sous la forme de 32 caractères hexadécimaux en minuscules. Disponible à partir de StackQL v1.0.
Voir aussi :
[SELECT] [ Concaténation ]
Syntaxe
SELECT MD5(expression) FROM <multipartIdentifier>;
Arguments
expression
Une chaîne, ou une valeur convertie en texte. Un argument NULL renvoie NULL.
Valeur(s) renvoyée(s)
Renvoie une chaîne hexadécimale de 32 caractères en minuscules.
MD5est fournie pour la prise d'empreinte et la détection de changements. Ce n'est pas une primitive de sécurité ni de gestion des mots de passe. Sur le backend PostgreSQL, c'est la fonctionmd5propre à la base de données qui est utilisée.
Exemples
Calculer l'empreinte d'une valeur dérivée
Les variables sont substituées sous forme de valeurs typées, l'entier est converti en texte et joint au suffixe, et l'empreinte est calculée sur le résultat mis en minuscules. Les mêmes entrées produisent toujours la même chaîne hexadécimale de 32 caractères, si bien que la valeur peut servir de clé stable.
SET some_id = 42;
SET suffix = 'East';
SELECT md5(lower(CONVERT($some_id, TEXT) || '-' || $suffix)) AS digest;
Détecter les changements de configuration
Le hachage d'une colonne JSON sérialisée donne une valeur courte à stocker et à comparer d'une exécution à l'autre. Un bucket dont l'empreinte diffère de celle de la dernière exécution a une configuration IAM modifiée, sans qu'il soit nécessaire de stocker ou de comparer le document entier.
SELECT name, md5(json_extract(iamConfiguration, '$')) AS iam_digest
FROM google.storage.buckets
WHERE project = 'stackql-demo';