title: Connect to PostgreSQL from Oracle with only PL/SQL
body: <p>I am working on an Oracle script that needs data from PostgreSQL and will be run on a number of different servers. The connection to the data will remain the same, so I would like to connect to PostgreSQL without modifying the tnsnames.ora file or adding an ODBC connection.</p>
  
  <p>I have been trying to use <code>CREATE DATABASE LINK</code>, but I'm not finding a way to connect to a driver without going through an ODBC connection:</p>
  
  <pre><code>CREATE DATABASE LINK "LinkName"
  CONNECT TO "PgSqlUserName" IDENTIFIED BY "PgSqlPassword"
  USING '(DESCRIPTION=
   (ADDRESS=
   (PROTOCOL=TCP)
   (HOST=PgSqlServerName)
   (PORT=5432))
   (CONNECT_DATA=
   (SID=PgSqlDatabaseName)))';
  </code></pre>
  
  <p>Trying to run</p>
  
  <pre><code>SELECT * FROM "PgSqlTable"@"LinkName";
  </code></pre>
  
  <p>gives the error message:</p>
  
  <pre><code>ORA-12537: TNS:connection closed
  12537. 00000 -  "TNS:connection closed"
  *Cause:    "End of file" condition has been reached; partner has disconnected.
  *Action:   None needed; this is an information message.
  Error at Line: xx Column: xx
  </code></pre>
  
  <p>Is there a way to connect to a PostgreSql database from Oracle without modifying the tnsnames.ora file or setting up an ODBC connection?</p>