我正在研究一个需要来自 PostgreSQL 的数据的 Oracle 脚本,它将在许多不同的服务器上运行。与数据的连接将保持不变,因此我想在不修改 tnsnames.ora 文件或添加 ODBC 连接的情况下连接到 PostgreSQL。
我一直在尝试使用CREATE DATABASE LINK
,但我找不到不通过 ODBC 连接即可连接到驱动程序的方法:
CREATE DATABASE LINK "LinkName"
CONNECT TO "PgSqlUserName" IDENTIFIED BY "PgSqlPassword"
USING '(DESCRIPTION=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=PgSqlServerName)
(PORT=5432))
(CONNECT_DATA=
(SID=PgSqlDatabaseName)))';
试图运行
SELECT * FROM "PgSqlTable"@"LinkName";
给出错误信息:
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
有没有办法在不修改 tnsnames.ora 文件或设置 ODBC 连接的情况下从 Oracle 连接到 PostgreSql 数据库?