

# Usar funções da extensão orafce
<a name="Appendix.PostgreSQL.CommonDBATasks.orafce"></a>

A extensão orafce fornece funções e operadores que emulam um subconjunto de funções e pacotes de um banco de dados Oracle. A extensão orafce permite fazer a portabilidade de uma aplicação Oracle para o PostgreSQL com mais facilidade. Essa extensão é compatível com o RDS para PostgreSQL versões 9.6.6 e posteriores. Para obter mais informações sobre a extensão, consulte o [orafce](https://github.com/orafce/orafce) no GitHub.

**nota**  
O RDS para PostgreSQL não é compatível com o pacote `utl_file` que faz parte da extensão orafce. Isso ocorre porque as funções do esquema `utl_file` fornecem operações de leitura e gravação em arquivos de texto do sistema operacional, o que exige que o superusuário acesse o host subjacente. Como um serviço gerenciado, o RDS para PostgreSQL não fornece acesso ao host.

**Para usar a extensão orafce**

1. Conecte-se à instância de banco de dados com o nome do usuário principal que você usou para criar a instância de banco de dados. 

   Se você quiser ativar a extensão orafce para um banco de dados diferente na mesma instância de banco de dados, use o comando `/c dbname` do psql. Usando esse comando, você muda do banco de dados primário depois de iniciar a conexão.

1. Ativar a extensão orafce com a instrução `CREATE EXTENSION`.

   ```
   CREATE EXTENSION orafce;
   ```

1. Transfira propriedade do esquema oracle para a função rds\$1superuser com a instrução `ALTER SCHEMA`.

   ```
   ALTER SCHEMA oracle OWNER TO rds_superuser;
   ```

   Caso queira ver uma lista de proprietários do esquema oracle, use o comando de psql `\dn`.