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.
sp_execute_postgresql
Vous pouvez exécuter des SQL instructions Postgre depuis le point de SQL terminaison T. Cela simplifie vos applications car vous n'avez pas besoin de quitter le SQL port T pour exécuter ces instructions.
Syntaxe
sp_execute_postgresql [ @stmt = ] statement
Arguments
- instruction [@stmt]
-
L'argument est de type varchar. Cet argument accepte les instructions en langage PG.
Note
Vous ne pouvez passer qu'une seule instruction en langage PG comme argument, sinon l'erreur suivante se produira.
1>
exec sp_execute_postgresql 'create extension pg_stat_statements; drop extension pg_stat_statements'2>
go
Msg 33557097, Level 16, State 1, Server BABELFISH, Line 1 expected 1 statement but got 2 statements after parsing
Notes d’utilisation
CREATE EXTENSION
Crée et charge une nouvelle extension dans la base de données actuelle.
1>
EXEC sp_execute_postgresql 'create extension [ IF NOT EXISTS ]<extension name>
[ WITH ] [SCHEMAschema_name
] [VERSIONversion
]';2>
go
L'exemple suivant montre comment créer une extension :
1>
EXEC sp_execute_postgresql 'create extension pg_stat_statements with schema sys version "1.10"';2>
go
Utilisez la commande suivante pour accéder aux objets de l'extension :
1>
select * from pg_stat_statements;2>
go
Note
Si le nom du schéma n'est pas fourni explicitement lors de la création de l'extension, les extensions sont installées par défaut dans le schéma public. Vous devez fournir le qualificateur de schéma pour accéder aux objets de l'extension, comme mentionné ci-dessous :
1>
select * from [public].pg_stat_statements;2>
go
Extensions prises en charge
Les extensions suivantes disponibles avec Aurora Postgre SQL fonctionnent avec Babelfish.
pg_stat_statements
tds_fdw
fuzzystrmatch
Limites
Les utilisateurs doivent avoir le rôle sysadmin sur T- SQL et rds_superuser sur postgres pour installer les extensions.
Les extensions ne peuvent pas être installées dans des schémas créés par l'utilisateur, ni dans des schémas dbo et guest pour les bases de données master, tempdb et msdb.
CASCADEl'option n'est pas prise en charge.
ALTER EXTENSION
Vous pouvez effectuer une mise à niveau vers une nouvelle version d'extension à l'aide de l'ALTERextension.
1>
EXEC sp_execute_postgresql 'alter extension <extension name> UPDATE TO <new_version>';2>
go
Limites
Vous pouvez mettre à niveau la version de votre extension uniquement à l'aide de l'instruction ALTER Extension. Les autres opérations ne sont pas prises en charge.
DROP EXTENSION
Supprime l'extension spécifiée. Vous pouvez également utiliser les options if exists
ou restrict
pour supprimer l'extension.
1>
EXEC sp_execute_postgresql 'drop extension <extension name>';2>
go
Limites
CASCADEl'option n'est pas prise en charge.