

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# sp\$1execute\$1postgresql
<a name="sp_execute_postgresql"></a>

Anda dapat mengeksekusi SQL pernyataan Postgre dari T- SQL endpoint. Ini menyederhanakan aplikasi Anda karena Anda tidak perlu keluar dari SQL T-port untuk mengeksekusi pernyataan ini. 

## Sintaks
<a name="sp_execute_postgresql-syntax"></a>

 

```
sp_execute_postgresql [ @stmt = ] statement
```

## Argumen
<a name="sp_execute_postgresql-arguments"></a>

 *Pernyataan [ @stmt ]*   
Argumennya adalah dari datatype varchar. Argumen ini menerima pernyataan dialek PG.

**catatan**  
Anda hanya dapat meneruskan satu pernyataan dialek PG sebagai argumen, jika tidak, maka akan menimbulkan kesalahan berikut.

```
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
```

## Catatan penggunaan
<a name="sp_execute_postgresql-statements"></a>

### CREATE EXTENSION
<a name="sp_execute_postgresql-statements-create"></a>

Membuat dan memuat ekstensi baru ke dalam basis data saat ini. 

```
1>EXEC sp_execute_postgresql 'create extension [ IF NOT EXISTS ] <extension name> [ WITH ] [SCHEMA schema_name] [VERSION version]';
2>go
```

Contoh berikut menunjukkan cara membuat ekstensi:

```
1>EXEC sp_execute_postgresql 'create extension pg_stat_statements with schema sys version "1.10"';
2>go
```

Gunakan perintah berikut untuk mengakses objek ekstensi:

```
1>select * from pg_stat_statements;
2>go
```

**catatan**  
 Jika nama skema tidak diberikan secara eksplisit selama pembuatan ekstensi, secara default ekstensi diinstal di skema publik. Anda harus memberikan kualifikasi skema untuk mengakses objek ekstensi seperti yang disebutkan di bawah ini:

```
1>select * from [public].pg_stat_statements;
2>go
```

**Ekstensi yang didukung**

Ekstensi berikut yang tersedia dengan Aurora Postgre SQL berfungsi dengan Babelfish.
+ `pg_stat_statements`
+ `tds_fdw`
+ `fuzzystrmatch`

**Batasan**
+ Pengguna harus memiliki peran sysadmin pada T- SQL dan rds\$1superuser di postgres untuk menginstal ekstensi.
+ Ekstensi tidak dapat diinstal pada skema yang dibuat pengguna dan juga pada skema dbo dan tamu untuk basis data master, tempdb, dan msdb. 
+ CASCADEopsi tidak didukung.

## ALTER EXTENSION
<a name="sp_execute_postgresql-alter"></a>

Anda dapat meningkatkan ke versi ekstensi baru menggunakan ALTER ekstensi. 

```
1>EXEC sp_execute_postgresql 'alter extension <extension name> UPDATE TO <new_version>';
2>go
```

**Batasan**
+ Anda dapat memutakhirkan versi ekstensi Anda hanya menggunakan pernyataan ALTER Ekstensi. Opsi lain tidak didukung.

## DROP EXTENSION
<a name="sp_execute_postgresql-drop"></a>

Membatalkan ekstensi yang ditentukan. Anda juga dapat menggunakan opsi `if exists` atau `restrict` untuk membatalkan ekstensi. 

```
1>EXEC sp_execute_postgresql 'drop extension <extension name>';
2>go
```

**Batasan**
+ CASCADEopsi tidak didukung.