本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
sp_execute_postgresql
您可以從 T SQL 端點執行 Postgre SQL 語句。這簡化了您的應用程序,因為您不需要退出 T SQL 端口即可執行這些語句。
語法
sp_execute_postgresql [ @stmt = ] statement
引數
- [ @stmt ] 陳述式
-
引數屬於資料類型 varchar。此引數接受 PG 方言陳述式。
注意
您只能傳遞一個 PG 方言陳述式作為引數,否則其會引發下列錯誤。
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
使用須知
CREATE EXTENSION
建立新的擴充功能並將其載入至目前資料庫。
1>
EXEC sp_execute_postgresql 'create extension [ IF NOT EXISTS ]<extension name>
[ WITH ] [SCHEMAschema_name
] [VERSIONversion
]';2>
go
下列範例示範如何建立擴充功能:
1>
EXEC sp_execute_postgresql 'create extension pg_stat_statements with schema sys version "1.10"';2>
go
請使用下列命令存取擴充功能物件:
1>
select * from pg_stat_statements;2>
go
注意
如果在擴充功能建立期間未明確提供結構描述名稱,則依預設,擴充功能會安裝在公開結構描述中。您必須提供結構描述限定詞來存取擴充功能物件,如下所述:
1>
select * from [public].pg_stat_statements;2>
go
支援的擴充功能
以下擴展可與 Aurora 波斯特格雷一起使SQL用巴貝爾魚。
pg_stat_statements
tds_fdw
fuzzystrmatch
限制
使用者必須在 Postgres 上擁有 T SQL 和 rds_superuser 的系統管理員角色,才能安裝擴充功能。
擴充功能無法安裝在使用者建立的結構描述中,也不能安裝在 master、tempdb 和 msdb 資料庫的 dbo 和客體結構描述中。
CASCADE不支援選項。
ALTER EXTENSION
您可以使用擴充功能升級到新的擴充ALTER功能版本。
1>
EXEC sp_execute_postgresql 'alter extension <extension name> UPDATE TO <new_version>';2>
go
限制
您只能使用 Extensions 陳述式來升級擴ALTER充功能的版本。不支援其他操作。
DROP EXTENSION
刪除指定的擴充功能。您也可以使用 if exists
或 restrict
選項刪除擴充功能。
1>
EXEC sp_execute_postgresql 'drop extension <extension name>';2>
go
限制
CASCADE不支援選項。