Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
sp_execute_postgresql
Sie können PostgreSQL-Anweisungen vom T-SQL-Endpunkt aus ausführen. Dies vereinfacht Ihre Anwendungen, da Sie den T-SQL-Port nicht verlassen müssen, um diese Anweisungen auszuführen.
Syntax
sp_execute_postgresql [ @stmt = ] statement
Argumente
- [ @stmt ]-Anweisung
-
Das Argument hat den Datentyp „varchar“. Dieses Argument akzeptiert Anweisungen im PG-Dialekt.
Anmerkung
Sie können nur eine Anweisung im PG-Dialekt als Argument übergeben, andernfalls wird der folgende Fehler ausgelöst.
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
Nutzungshinweise
CREATE EXTENSION
Erstellt eine neue Erweiterung und lädt diese in die aktuelle Datenbank.
1>EXEC sp_execute_postgresql 'create extension [ IF NOT EXISTS ]<extension name>[ WITH ] [SCHEMAschema_name] [VERSIONversion]';2>go
Im folgenden Beispiel sehen Sie, wie eine Erweiterung erstellt wird:
1>EXEC sp_execute_postgresql 'create extension pg_stat_statements with schema sys version "1.10"';2>go
Verwenden Sie den folgenden Befehl für den Zugriff auf Erweiterungsobjekte:
1>select * from pg_stat_statements;2>go
Anmerkung
Wenn der Schemaname bei der Erstellung der Erweiterung nicht explizit angegeben wird, werden die Erweiterungen standardmäßig im öffentlichen Schema installiert. Sie müssen den Schemaqualifizierer angeben, um auf die Erweiterungsobjekte zuzugreifen, wie unten dargestellt:
1>select * from [public].pg_stat_statements;2>go
Unterstützte Erweiterungen
Die folgenden mit Aurora PostgreSQL verfügbaren Erweiterungen können mit Babelfish verwendet werden.
pg_stat_statementstds_fdwfuzzystrmatch
Einschränkungen
Benutzer müssen in T-SQL über die Rolle „sysadmin“ und in Postgres über die Rolle „rds_superuser“ verfügen, um die Erweiterungen installieren zu können.
Es ist nicht möglich, Erweiterungen in vom Benutzer erstellten Schemas sowie in dbo- und Gastschemas für die Masterdatenbank, die Datenbank „tempdb“ und die Datenbank „msdb“ zu installieren.
Die Option CASCADE wird nicht unterstützt.
ALTER EXTENSION
Mit ALTER EXTENSION können Sie eine Aktualisierung auf eine neue Erweiterungsversion vornehmen.
1>EXEC sp_execute_postgresql 'alter extension <extension name> UPDATE TO <new_version>';2>go
Einschränkungen
Sie können die Version Ihrer Erweiterung nur mit der Anweisung ALTER EXTENSION aktualisieren. Andere Operationen werden nicht unterstützt.
DROP EXTENSION
Löscht die angegebene Erweiterung. Sie können auch die Optionen if exists oder restrict verwenden, um die Erweiterung zu löschen.
1>EXEC sp_execute_postgresql 'drop extension <extension name>';2>go
Einschränkungen
Die Option CASCADE wird nicht unterstützt.