Référence fonctionnelle pour les extensions linguistiques fiables pour Postgre SQL - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence fonctionnelle pour les extensions linguistiques fiables pour Postgre SQL

Consultez la documentation de référence suivante sur les fonctions disponibles dans Trusted Language Extensions for PostgreSQL. Utilisez ces fonctions pour installer, enregistrer, mettre à jour et gérer vos TLEextensions, c'est-à-dire les extensions Postgre SQL que vous développez à l'aide du kit de développement Trusted Language Extensions.

pgtle.available_extensions

La fonction pgtle.available_extensions est une fonction à renvoi d'ensemble. Elle renvoie toutes les TLE extensions disponibles dans la base de données. Chaque ligne renvoyée contient des informations sur une seule TLE extension.

Prototype de fonction

pgtle.available_extensions()

Rôle

Aucune.

Arguments

Aucune.

Sortie

  • name— Le nom de l'TLEextension.

  • default_version— Version de l'TLEextension à utiliser lorsqu'elle CREATE EXTENSION est appelée sans qu'une version soit spécifiée.

  • description— Une description plus détaillée de l'TLEextension.

Exemple d'utilisation

SELECT * FROM pgtle.available_extensions();

pgtle.available_extension_versions

La fonction available_extension_versions est une fonction à renvoi d'ensemble. Elle renvoie une liste de toutes les TLE extensions disponibles et de leurs versions. Chaque ligne contient des informations sur une version spécifique de l'TLEextension donnée, notamment si elle nécessite un rôle spécifique.

Prototype de fonction

pgtle.available_extension_versions()

Rôle

Aucune.

Arguments

Aucune.

Sortie

  • name— Le nom de l'TLEextension.

  • version— La version de l'TLEextension.

  • superuser— Cette valeur s'applique toujours false à vos TLE extensions. Les autorisations nécessaires pour créer l'TLEextension ou la mettre à jour sont les mêmes que pour créer d'autres objets dans la base de données donnée.

  • trusted— Cette valeur correspond toujours false à une TLE extension.

  • relocatable— Cette valeur correspond toujours false à une TLE extension.

  • schema— Spécifie le nom du schéma dans lequel l'TLEextension est installée.

  • requires— Un tableau contenant les noms des autres extensions nécessaires à cette TLE extension.

  • description— Une description détaillée de l'TLEextension.

Pour plus d'informations sur les valeurs de sortie, voir Empaqueter des objets associés dans une extension > Fichiers d'extension dans la SQL documentation Postgre.

Exemple d'utilisation

SELECT * FROM pgtle.available_extension_versions();

pgtle.extension_update_paths

La fonction extension_update_paths est une fonction à renvoi d'ensemble. Elle renvoie une liste de tous les chemins de mise à jour possibles pour une TLE extension. Chaque ligne inclut les mises à niveau ou rétrogradations disponibles pour cette TLE extension.

Prototype de fonction

pgtle.extension_update_paths(name)

Rôle

Aucune.

Arguments

name— Le nom de l'TLEextension à partir de laquelle obtenir les chemins de mise à niveau.

Sortie

  • source : version source d'une mise à jour.

  • target : version cible d'une mise à jour.

  • path— Le chemin de mise à niveau utilisé pour mettre à jour une TLE extension d'une source target version à l'autre, par exemple,0.1--0.2.

Exemple d'utilisation

SELECT * FROM pgtle.extension_update_paths('your-TLE');

pgtle.install_extension

La install_extension fonction vous permet d'installer les artefacts qui constituent votre TLE extension dans la base de données, après quoi elle peut être créée à l'aide de la CREATE EXTENSION commande.

Prototype de fonction

pgtle.install_extension(name text, version text, description text, ext text, requires text[] DEFAULT NULL::text[])

Rôle

Aucune.

Arguments

  • name— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • version— La version de l'TLEextension.

  • description— Une description détaillée de l'TLEextension. Cette description est affichée dans le champ comment de pgtle.available_extensions().

  • ext— Le contenu de l'TLEextension. Cette valeur contient des objets tels que des fonctions.

  • requires— Paramètre facultatif qui spécifie les dépendances de cette TLE extension. L'extension pg_tle est automatiquement ajoutée en tant que dépendance.

La plupart de ces arguments sont identiques à ceux inclus dans un fichier de contrôle d'extension pour installer une SQL extension Postgre sur le système de fichiers d'une instance PostgreSQL. Pour plus d'informations, consultez les fichiers d'extension dans la section Empaqueter des objets associés dans une extension dans la SQL documentation Postgre.

Sortie

Cette fonction renvoie OK en cas de réussite ou NULL en cas d'erreur.

  • OK— L'TLEextension a été correctement installée dans la base de données.

  • NULL— L'TLEextension n'a pas été correctement installée dans la base de données.

Exemple d'utilisation

SELECT pgtle.install_extension( 'pg_tle_test', '0.1', 'My first pg_tle extension', $_pgtle_$ CREATE FUNCTION my_test() RETURNS INT AS $$ SELECT 42; $$ LANGUAGE SQL IMMUTABLE; $_pgtle_$ );

pgtle.install_update_path

La install_update_path fonction fournit un chemin de mise à jour entre deux versions différentes d'une TLE extension. Cette fonction permet aux utilisateurs de votre TLE extension de mettre à jour sa version en utilisant la ALTER EXTENSION ... UPDATE syntaxe.

Prototype de fonction

pgtle.install_update_path(name text, fromvers text, tovers text, ext text)

Rôle

pgtle_admin

Arguments

  • name— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • fromvers— La version source de l'TLEextension pour la mise à niveau.

  • tovers— Version de destination de l'TLEextension pour la mise à niveau.

  • ext : contenu de la mise à jour. Cette valeur contient des objets tels que des fonctions.

Sortie

Aucune.

Exemple d'utilisation

SELECT pgtle.install_update_path('pg_tle_test', '0.1', '0.2', $_pgtle_$ CREATE OR REPLACE FUNCTION my_test() RETURNS INT AS $$ SELECT 21; $$ LANGUAGE SQL IMMUTABLE; $_pgtle_$ );

pgtle.register_feature

La register_feature fonction ajoute la SQL fonctionnalité interne Postgre spécifiée à la pgtle.feature_info table. Les SQL hooks Postgre sont un exemple de fonctionnalité interne de PostgreSQL. Le kit de développement Trusted Language Extensions prend en charge l'utilisation des SQL hooks Postgre. Actuellement, cette fonction prend en charge la fonctionnalité suivante.

  • passcheck— Enregistre le crochet de vérification des mots de passe avec votre procédure ou fonction qui personnalise le comportement de vérification des mots de passe de SQL Postgre.

Prototype de fonction

pgtle.register_feature(proc regproc, feature pg_tle_feature)

Rôle

pgtle_admin

Arguments

  • proc : nom d'une procédure ou d'une fonction stockée à utiliser pour la fonctionnalité.

  • feature : nom de la fonctionnalité pg_tle (tel que passcheck) à enregistrer avec la fonction.

Sortie

Aucune.

Exemple d'utilisation

SELECT pgtle.register_feature('pw_hook', 'passcheck');

pgtle.register_feature_if_not_exists

La pgtle.register_feature_if_not_exists fonction ajoute la SQL fonctionnalité Postgre spécifiée au pgtle.feature_info tableau et identifie l'TLEextension ou l'autre procédure ou fonction qui utilise cette fonctionnalité. Pour plus d'informations sur les hooks et le kit Trusted Language Extensions, consultez Utiliser les SQL hooks Postgre avec vos extensions TLE.

Prototype de fonction

pgtle.register_feature_if_not_exists(proc regproc, feature pg_tle_feature)

Rôle

pgtle_admin

Arguments

  • proc— Le nom d'une procédure stockée ou d'une fonction contenant la logique (code) à utiliser comme fonctionnalité pour votre TLE extension. Par exemple, le code pw_hook.

  • feature— Le nom de la SQL fonctionnalité Postgre à enregistrer pour la TLE fonction. Actuellement, la seule fonctionnalité disponible est le hook passcheck. Pour de plus amples informations, veuillez consulter Crochet de vérification du mot de passe (passcheck).

Sortie

Renvoie true après l'enregistrement de la fonction pour l'extension spécifiée. Renvoie false si la fonctionnalité est déjà enregistrée.

Exemple d'utilisation

SELECT pgtle.register_feature_if_not_exists('pw_hook', 'passcheck');

pgtle.set_default_version

La set_default_version fonction vous permet de spécifier un default_version pour votre TLE extension. Vous pouvez utiliser cette fonction pour définir un chemin de mise à niveau et désigner la version par défaut pour votre TLE extension. Lorsque les utilisateurs de base de données spécifient votre TLE extension dans les ALTER EXTENSION ... UPDATE commandes CREATE EXTENSION et, cette version de votre TLE extension est créée dans la base de données pour cet utilisateur.

Cette fonction renvoie true en cas de réussite. Si l'TLEextension spécifiée dans l'nameargument n'existe pas, la fonction renvoie une erreur. De même, si version l'TLEextension n'existe pas, elle renvoie une erreur.

Prototype de fonction

pgtle.set_default_version(name text, version text)

Rôle

pgtle_admin

Arguments

  • name— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • version— Version de l'TLEextension pour définir la valeur par défaut.

Sortie

  • true : lorsque la définition de la version par défaut réussit, la fonction renvoie true.

  • ERROR— Renvoie un message d'erreur si aucune TLE extension portant le nom ou la version spécifiés n'existe.

Exemple d'utilisation

SELECT * FROM pgtle.set_default_version('my-extension', '1.1');

pgtle.uninstall_extension(name)

La uninstall_extension fonction supprime toutes les versions d'une TLE extension d'une base de données. Cette fonction empêche les futurs appels CREATE EXTENSION de pour installer l'TLEextension. Si l'TLEextension n'existe pas dans la base de données, une erreur est générée.

La uninstall_extension fonction ne supprime pas une TLE extension actuellement active dans la base de données. Pour supprimer une TLE extension actuellement active, vous devez appeler explicitement DROP EXTENSION pour la supprimer.

Prototype de fonction

pgtle.uninstall_extension(extname text)

Rôle

pgtle_admin

Arguments

  • extname— Nom de l'TLEextension à désinstaller. Ce nom est le même que celui utilisé pour charger l'TLEextension CREATE EXTENSION à utiliser dans une base de données donnée.

Sortie

Aucune.

Exemple d'utilisation

SELECT * FROM pgtle.uninstall_extension('pg_tle_test');

pgtle.uninstall_extension(name, version)

La uninstall_extension(name, version) fonction supprime la version spécifiée de l'TLEextension de la base de données. Cette fonction empêche CREATE EXTENSION et ALTER EXTENSION empêche l'installation ou la mise à jour d'une TLE extension vers la version spécifiée. Cette fonction supprime également tous les chemins de mise à jour pour la version spécifiée de l'TLEextension. Cette fonction ne désinstalle pas l'TLEextension si elle est actuellement active dans la base de données. Vous devez appeler explicitement DROP EXTENSION pour supprimer l'TLEextension. Pour désinstaller toutes les versions d'une TLE extension, consultezpgtle.uninstall_extension(name).

Prototype de fonction

pgtle.uninstall_extension(extname text, version text)

Rôle

pgtle_admin

Arguments

  • extname— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • version— Version de l'TLEextension à désinstaller de la base de données.

Sortie

Aucune.

Exemple d'utilisation

SELECT * FROM pgtle.uninstall_extension('pg_tle_test', '0.2');

pgtle.uninstall_extension_if_exists

La uninstall_extension_if_exists fonction supprime toutes les versions d'une TLE extension d'une base de données donnée. Si l'TLEextension n'existe pas, la fonction revient silencieusement (aucun message d'erreur n'est généré). Si l'extension spécifiée est actuellement active dans une base de données, cette fonction ne la supprime pas. Vous devez appeler explicitement DROP EXTENSION pour supprimer l'TLEextension avant d'utiliser cette fonction pour désinstaller ses artefacts.

Prototype de fonction

pgtle.uninstall_extension_if_exists(extname text)

Rôle

pgtle_admin

Arguments

  • extname— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

Sortie

La fonction uninstall_extension_if_exists renvoie true après avoir désinstallé l'extension spécifiée. Si l'extension spécifiée n'existe pas, la fonction renvoie false.

  • true— Retourne true après la désinstallation de l'TLEextension.

  • false— Retourne false lorsque l'TLEextension n'existe pas dans la base de données.

Exemple d'utilisation

SELECT * FROM pgtle.uninstall_extension_if_exists('pg_tle_test');

pgtle.uninstall_update_path

La uninstall_update_path fonction supprime le chemin de mise à jour spécifique d'une TLE extension. Cela empêche ALTER EXTENSION ... UPDATE TO de l'utiliser comme chemin de mise à jour.

Si l'TLEextension est actuellement utilisée par l'une des versions de ce chemin de mise à jour, elle reste dans la base de données.

Si le chemin de mise à jour spécifié n'existe pas, cette fonction génère une erreur.

Prototype de fonction

pgtle.uninstall_update_path(extname text, fromvers text, tovers text)

Rôle

pgtle_admin

Arguments

  • extname— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • fromvers— Version source de l'TLEextension utilisée dans le chemin de mise à jour.

  • tovers— Version de destination de l'TLEextension utilisée dans le chemin de mise à jour.

Sortie

Aucune.

Exemple d'utilisation

SELECT * FROM pgtle.uninstall_update_path('pg_tle_test', '0.1', '0.2');

pgtle.uninstall_update_path_if_exists

La uninstall_update_path_if_exists fonction est similaire uninstall_update_path en ce sens qu'elle supprime le chemin de mise à jour spécifié d'une TLE extension. Toutefois, si le chemin de mise à jour n'existe pas, cette fonction ne renvoie pas de message d'erreur. Au lieu de cela, la fonction renvoie false.

Prototype de fonction

pgtle.uninstall_update_path_if_exists(extname text, fromvers text, tovers text)

Rôle

pgtle_admin

Arguments

  • extname— Le nom de l'TLEextension. Cette valeur est utilisée lors d'un appel de CREATE EXTENSION.

  • fromvers— Version source de l'TLEextension utilisée dans le chemin de mise à jour.

  • tovers— Version de destination de l'TLEextension utilisée dans le chemin de mise à jour.

Sortie

  • true— La fonction a correctement mis à jour le chemin de l'TLEextension.

  • false— La fonction n'a pas pu mettre à jour le chemin de l'TLEextension.

Exemple d'utilisation

SELECT * FROM pgtle.uninstall_update_path_if_exists('pg_tle_test', '0.1', '0.2');

pgtle.unregister_feature

La fonction unregister_feature permet de supprimer les fonctions qui ont été enregistrées pour utiliser des fonctionnalités pg_tle, telles que les hooks. Pour obtenir des informations sur l'enregistrement d'une fonctionnalité, consultez pgtle.register_feature.

Prototype de fonction

pgtle.unregister_feature(proc regproc, feature pg_tle_features)

Rôle

pgtle_admin

Arguments

  • proc : nom d'une fonction stockée à enregistrer avec une fonctionnalité pg_tle.

  • feature : nom de la fonctionnalité pg_tle à enregistrer avec la fonction. Par exemple, passcheck est une fonctionnalité qui peut être enregistrée pour être utilisée par les extensions Trusted Language Extensions (TLE) que vous développez. Pour de plus amples informations, veuillez consulter Crochet de vérification du mot de passe (passcheck).

Sortie

Aucune.

Exemple d'utilisation

SELECT * FROM pgtle.unregister_feature('pw_hook', 'passcheck');

pgtle.unregister_feature_if_exists

La fonction unregister_feature permet de supprimer les fonctions qui ont été enregistrées pour utiliser des fonctionnalités pg_tle, telles que les hooks. Pour de plus amples informations, veuillez consulter Utiliser les SQL hooks Postgre avec vos extensions TLE. Renvoie true après avoir réussi à annuler l'enregistrement de la fonctionnalité. Renvoie false si la fonctionnalité n'a pas été enregistrée.

Pour plus d'informations sur l'enregistrement des pg_tle fonctionnalités TLE de vos extensions, consultezpgtle.register_feature.

Prototype de fonction

pgtle.unregister_feature_if_exists('proc regproc', 'feature pg_tle_features')

Rôle

pgtle_admin

Arguments

  • proc : nom de la fonction stockée qui a été enregistrée pour inclure une fonctionnalité pg_tle.

  • feature : nom de la fonctionnalité pg_tle qui a été enregistrée avec l'extension de langage approuvé.

Sortie

Renvoie true ou false, comme suit.

  • true : la fonction a annulé l'enregistrement de la fonctionnalité à l'extension.

  • false— La fonction n'a pas pu annuler l'enregistrement de la fonctionnalité dans l'TLEextension.

Exemple d'utilisation

SELECT * FROM pgtle.unregister_feature_if_exists('pw_hook', 'passcheck');