Riferimento alla funzione per Trusted Language Extensions for Postgre SQL - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Riferimento alla funzione per Trusted Language Extensions for Postgre SQL

Visualizza la seguente documentazione di riferimento sulle funzioni disponibili in Trusted Language Extensions for SQL Postgre. Utilizzate queste funzioni per installare, registrare, aggiornare e gestire TLEle estensioni, ovvero le estensioni Postgre sviluppate utilizzando il kit di sviluppo Trusted Language SQL Extensions.

pgtle.available_extensions

La funzione pgtle.available_extensions è progettata per restituire un set. Restituisce tutte TLE le estensioni disponibili nel database. Ogni riga restituita contiene informazioni su una singola TLE estensione.

Prototipo di funzione

pgtle.available_extensions()

Ruolo

Nessuna.

Argomenti

Nessuna.

Output

  • name— Il nome dell'TLEestensione.

  • default_version— La versione dell'TLEestensione da utilizzare quando CREATE EXTENSION viene chiamata senza specificare una versione.

  • description— Una descrizione più dettagliata dell'TLEestensione.

Esempio di utilizzo

SELECT * FROM pgtle.available_extensions();

pgtle.available_extension_versions

La funzione available_extension_versions è progettata per restituire un set. Restituisce un elenco di tutte le TLE estensioni disponibili e delle relative versioni. Ogni riga contiene informazioni su una versione specifica dell'TLEestensione specificata, incluso se richiede un ruolo specifico.

Prototipo di funzione

pgtle.available_extension_versions()

Ruolo

Nessuna.

Argomenti

Nessuna.

Output

  • name— Il nome dell'TLEestensione.

  • version— La versione dell'TLEestensione.

  • superuser— Questo valore è sempre valido false per TLE le tue estensioni. Le autorizzazioni necessarie per creare l'TLEestensione o aggiornarla sono le stesse necessarie per creare altri oggetti nel database specificato.

  • trusted— Questo valore è sempre false per un'TLEestensione.

  • relocatable— Questo valore è sempre false per un'TLEestensione.

  • schema— Speciifica il nome dello schema in cui è installata l'TLEestensione.

  • requires— Un array contenente i nomi di altre estensioni necessarie a questa TLE estensione.

  • description— Una descrizione dettagliata dell'TLEestensione.

Per ulteriori informazioni sui valori di output, vedete Imballaggio di oggetti correlati in un'estensione > File di estensione nella documentazione di Postgre. SQL

Esempio di utilizzo

SELECT * FROM pgtle.available_extension_versions();

pgtle.extension_update_paths

La funzione extension_update_paths è progettata per restituire un set. Restituisce un elenco di tutti i possibili percorsi di aggiornamento per un'TLEestensione. Ogni riga include gli aggiornamenti o i downgrade disponibili per quell'estensione. TLE

Prototipo di funzione

pgtle.extension_update_paths(name)

Ruolo

Nessuna.

Argomenti

name— Il nome dell'TLEestensione da cui ottenere i percorsi di aggiornamento.

Output

  • source: la versione di origine di un aggiornamento.

  • target: la versione di destinazione di un aggiornamento.

  • path— Il percorso di aggiornamento utilizzato per aggiornare un'TLEestensione da una source target versione all'altra, ad esempio0.1--0.2.

Esempio di utilizzo

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

pgtle.install_extension

La install_extension funzione consente di installare gli artefatti che compongono l'TLEestensione nel database, dopodiché può essere creata utilizzando il comando. CREATE EXTENSION

Prototipo di funzione

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

Ruolo

Nessuna.

Argomenti

  • name— Il nome dell'estensione. TLE Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • version— La versione dell'TLEestensione.

  • description— Una descrizione dettagliata dell'TLEestensione. Questa descrizione viene visualizzata nel campo comment in pgtle.available_extensions().

  • ext— Il contenuto dell'TLEestensione. Questo valore include gli oggetti, come le funzioni.

  • requires— Un parametro opzionale che specifica le dipendenze per questa TLE estensione. L'estensione pg_tle viene aggiunta automaticamente come dipendenza.

Molti di questi argomenti sono gli stessi inclusi in un file di controllo delle estensioni per l'installazione di un'estensione Postgre SQL sul file system di un'istanza Postgre. SQL Per ulteriori informazioni, consultate la sezione File di estensione nella creazione di pacchetti di oggetti correlati in un'estensione nella documentazione di Postgre. SQL

Output

Questa funzione restituisce OK in caso di esito positivo e NULL in caso di errore.

  • OK— L'TLEestensione è stata installata correttamente nel database.

  • NULL— L'TLEestensione non è stata installata correttamente nel database.

Esempio di utilizzo

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 funzione fornisce un percorso di aggiornamento tra due diverse versioni di un'TLEestensione. Questa funzione consente agli utenti dell'TLEestensione di aggiornarne la versione utilizzando la ALTER EXTENSION ... UPDATE sintassi.

Prototipo di funzione

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

Ruolo

pgtle_admin

Argomenti

  • name— Il nome dell'TLEestensione. Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • fromvers— La versione sorgente dell'TLEestensione per l'aggiornamento.

  • tovers— La versione di destinazione dell'TLEestensione per l'aggiornamento.

  • ext: i contenuti dell'aggiornamento. Questo valore include gli oggetti, come le funzioni.

Output

Nessuna.

Esempio di utilizzo

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 funzione aggiunge la SQL funzionalità interna di Postgre specificata alla tabella. pgtle.feature_info Gli SQL hook Postgre sono un esempio di funzionalità interna di Postgre. SQL Il kit di sviluppo Trusted Language Extensions supporta l'uso degli hook Postgre. SQL Attualmente, questa funzione supporta la seguente funzionalità.

  • passcheck— Registra l'hook per il controllo delle password con la procedura o la funzione che personalizza il comportamento di controllo delle password di Postgre. SQL

Prototipo di funzione

pgtle.register_feature(proc regproc, feature pg_tle_feature)

Ruolo

pgtle_admin

Argomenti

  • proc: il nome di una procedura o funzione memorizzata da utilizzare per la funzionalità.

  • feature: il nome della funzionalità pg_tle (ad esempio passcheck) da registrare con la funzione.

Output

Nessuna.

Esempio di utilizzo

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

pgtle.register_feature_if_not_exists

La pgtle.register_feature_if_not_exists funzione aggiunge la funzionalità Postgre specificata alla pgtle.feature_info tabella e identifica l'TLEestensione o altra procedura o SQL funzione che utilizza la funzione. Per ulteriori informazioni sugli hook e su Trusted Language Extensions, consulta Usare gli SQL hook Postgre con le tue estensioni TLE.

Prototipo di funzione

pgtle.register_feature_if_not_exists(proc regproc, feature pg_tle_feature)

Ruolo

pgtle_admin

Argomenti

  • proc— Il nome di una procedura o funzione memorizzata che contiene la logica (codice) da utilizzare come funzionalità per l'estensione. TLE Ad esempio, il codice pw_hook.

  • feature— Il nome della funzionalità Postgre da registrare per la SQL TLE funzione. Attualmente, l'unica funzionalità disponibile è l'hook passcheck. Per ulteriori informazioni, consulta Hook di verifica della password (passcheck).

Output

Restituisce true dopo aver registrato la funzionalità per l'estensione specificata. Restituisce false se la funzionalità è già registrata.

Esempio di utilizzo

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

pgtle.set_default_version

La set_default_version funzione consente di specificare una default_version per l'TLEestensione. È possibile utilizzare questa funzione per definire un percorso di aggiornamento e designare la versione come predefinita per l'TLEestensione. Quando gli utenti TLE del database specificano l'estensione nei ALTER EXTENSION ... UPDATE comandi CREATE EXTENSION and, quella versione dell'TLEestensione viene creata nel database per quell'utente.

Questa funzione restituisce true in caso di esito positivo. Se l'TLEestensione specificata nell'nameargomento non esiste, la funzione restituisce un errore. Analogamente, se version l'TLEestensione non esiste, restituisce un errore.

Prototipo di funzione

pgtle.set_default_version(name text, version text)

Ruolo

pgtle_admin

Argomenti

  • name— Il nome dell'TLEestensione. Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • version— La versione dell'TLEestensione per impostare l'impostazione predefinita.

Output

  • true: quando l'impostazione della versione predefinita ha esito positivo, la funzione restituisce true.

  • ERROR— Restituisce un messaggio di errore se non esiste un'TLEestensione con il nome o la versione specificati.

Esempio di utilizzo

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

pgtle.uninstall_extension(name)

La uninstall_extension funzione rimuove tutte le versioni di un'TLEestensione da un database. Questa funzione impedisce alle future chiamate CREATE EXTENSION di installare l'TLEestensione. Se l'TLEestensione non esiste nel database, viene generato un errore.

La uninstall_extension funzione non eliminerà un'TLEestensione attualmente attiva nel database. Per rimuovere un'TLEestensione attualmente attiva, devi chiamare esplicitamente DROP EXTENSION per rimuoverla.

Prototipo di funzione

pgtle.uninstall_extension(extname text)

Ruolo

pgtle_admin

Argomenti

  • extname— Il nome dell'TLEestensione da disinstallare. Questo nome è lo stesso usato CREATE EXTENSION per caricare l'TLEestensione da utilizzare in un determinato database.

Output

Nessuna.

Esempio di utilizzo

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

pgtle.uninstall_extension(name, version)

La uninstall_extension(name, version) funzione rimuove la versione specificata dell'TLEestensione dal database. Questa funzione impedisce CREATE EXTENSION e ALTER EXTENSION impedisce l'installazione o l'aggiornamento di un'TLEestensione alla versione specificata. Questa funzione rimuove anche tutti i percorsi di aggiornamento per la versione specificata dell'TLEestensione. Questa funzione non disinstallerà l'TLEestensione se è attualmente attiva nel database. È necessario chiamare in modo esplicito DROP EXTENSION per rimuovere l'TLEestensione. Per disinstallare tutte le versioni di un'TLEestensione, consultapgtle.uninstall_extension(name).

Prototipo di funzione

pgtle.uninstall_extension(extname text, version text)

Ruolo

pgtle_admin

Argomenti

  • extname— Il nome dell'TLEestensione. Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • version— La versione dell'TLEestensione da disinstallare dal database.

Output

Nessuna.

Esempio di utilizzo

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

pgtle.uninstall_extension_if_exists

La uninstall_extension_if_exists funzione rimuove tutte le versioni di un'TLEestensione da un determinato database. Se l'TLEestensione non esiste, la funzione ritorna silenziosamente (non viene generato alcun messaggio di errore). Se l'estensione specificata è attualmente attiva in un database, non viene eliminata dalla funzione. È necessario chiamare esplicitamente DROP EXTENSION per rimuovere l'TLEestensione prima di utilizzare questa funzione per disinstallarne gli artefatti.

Prototipo di funzione

pgtle.uninstall_extension_if_exists(extname text)

Ruolo

pgtle_admin

Argomenti

  • extname— Il nome dell'estensione. TLE Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

Output

La funzione uninstall_extension_if_exists restituisce true dopo aver disinstallato l'estensione specificata. Se l'estensione specificata non esiste, la funzione restituisce false.

  • true— Restituisce true dopo aver disinstallato l'TLEestensione.

  • false— Restituisce false quando l'TLEestensione non esiste nel database.

Esempio di utilizzo

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

pgtle.uninstall_update_path

La uninstall_update_path funzione rimuove il percorso di aggiornamento specifico da un'TLEestensione. In tal modo ALTER EXTENSION ... UPDATE TO non può utilizzarlo come percorso di aggiornamento.

Se l'TLEestensione è attualmente utilizzata da una delle versioni in questo percorso di aggiornamento, rimane nel database.

Se il percorso di aggiornamento specificato non esiste, la funzione genera un errore.

Prototipo di funzione

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

Ruolo

pgtle_admin

Argomenti

  • extname— Il nome dell'TLEestensione. Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • fromvers— La versione sorgente dell'TLEestensione utilizzata nel percorso di aggiornamento.

  • tovers— La versione di destinazione dell'TLEestensione utilizzata nel percorso di aggiornamento.

Output

Nessuna.

Esempio di utilizzo

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 funzione è simile uninstall_update_path in quanto rimuove il percorso di aggiornamento specificato da un'TLEestensione. Tuttavia, se il percorso di aggiornamento non esiste, questa funzione non genera un messaggio di errore e restituisce false.

Prototipo di funzione

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

Ruolo

pgtle_admin

Argomenti

  • extname— Il nome dell'TLEestensione. Questo valore viene utilizzato per la chiamata CREATE EXTENSION.

  • fromvers— La versione sorgente dell'TLEestensione utilizzata nel percorso di aggiornamento.

  • tovers— La versione di destinazione dell'TLEestensione utilizzata nel percorso di aggiornamento.

Output

  • true— La funzione ha aggiornato correttamente il percorso dell'TLEestensione.

  • false— La funzione non è stata in grado di aggiornare il percorso dell'TLEestensione.

Esempio di utilizzo

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

pgtle.unregister_feature

La funzione unregister_feature fornisce un modo per rimuovere le funzioni registrate per utilizzare la funzionalità pg_tle, ad esempio gli hook. Per ulteriori informazioni sulla registrazione di una funzionalità, consulta pgtle.register_feature.

Prototipo di funzione

pgtle.unregister_feature(proc regproc, feature pg_tle_features)

Ruolo

pgtle_admin

Argomenti

  • proc: il nome di una funzione memorizzata da registrare con una funzionalità pg_tle.

  • feature: il nome della funzionalità pg_tle da registrare con la funzione. Ad esempio, passcheck è una funzionalità che può essere registrata per essere utilizzata dalle estensioni Trusted Language Extensions sviluppate. Per ulteriori informazioni, consulta Hook di verifica della password (passcheck).

Output

Nessuna.

Esempio di utilizzo

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

pgtle.unregister_feature_if_exists

La funzione unregister_feature fornisce un modo per rimuovere le funzioni registrate per utilizzare la funzionalità pg_tle, ad esempio gli hook. Per ulteriori informazioni, consulta Usare gli SQL hook Postgre con le tue estensioni TLE. Restituisce true dopo aver completato l'annullamento della registrazione della funzionalità. Restituisce false se la funzionalità non è stata registrata.

Per informazioni sulla registrazione delle pg_tle funzionalità per le tue TLE estensioni, consulta. pgtle.register_feature

Prototipo di funzione

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

Ruolo

pgtle_admin

Argomenti

  • proc: il nome della funzione memorizzata che è stata registrata per includere una funzionalità pg_tle.

  • feature: il nome della funzionalità pg_tle registrata con l'estensione Trusted Language Extensions.

Output

Restituisce true o false, come indicato di seguito.

  • true: la funzione ha completato l'annullamento della registrazione della funzionalità dall'estensione.

  • false— La funzione non è stata in grado di annullare la registrazione della funzionalità dall'TLEestensione.

Esempio di utilizzo

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