正如Orafce Install.orafunc中提到的那样
我尝试在pgAdmin sql编辑器中运行orafce--3.0.sql。这给了我错误的ERROR: could not access file "MODULE_PATHNAME": No such file or directory.
模块路径是什么意思?
已安装程序:
strawberry perl with DBD::Oracle
postgresql 9.3
pgAdmin III未完全安装:
ora2pg我试着安装ora2pg...with是个问题。
H:\PostgreSQL\ora2pg-12.1>perl makefile.pl
Unparsable version '' for prerequisite DBD::Oracle at makefile.pl line 553
Generating a dmake-style Makefile
Writing Makefile for Ora2Pg
Writing MYMETA.yml and MYMETA.json
Done...
H:\PostgreSQL\ora2pg-12.1>dmake && dmake install
"Installing default configuration file (ora2pg_dist.conf) to C:\ora2pg"
Appending installation info to C:\strawberry\perl\lib/perllocal.pod
dmake: Warning: -- Target [install] was made but the time stamp has not been up
dated.建议的解决方案:
我从github下载了一份orafce副本,将文件解压缩到D:/Postgresql/orafce-master文件夹。
我只复制以下文件
orafce--unpackaged--3.0.6.sql
orafce--3.0.6.sql
orafce.control
到文件夹C:\Program Files\PostgreSQL\9.3\share\extension
然后,我尝试在pgAdmin III sql工具中运行这个命令。
CREATE EXTENSION orafce;
我收到了这个警告和错误。
[WARNING ] CREATE EXTENSION orafce ERROR: syntax error in file "C:/Program Files/PostgreSQL/9.3/share/extension/orafce.control" line 1, near end of line
我检查了orafce.control内容。它有这个配置。
# intarray extension
comment = 'Functions and operators that emulate a subset of functions and packages from the Oracle RDBMS'
default_version = '3.0.6'
module_pathname = '$libdir/orafunc'
relocatable = false`我不能通过这堵墙。问题是什么?
发布于 2014-02-21 05:52:50
因此,您正在处理源代码原始文件。您应该先编译这些文件,然后才能使用它。它在类似Unix的平台上相对简单,因为C编译器通常是可用的,而在MS上则相当困难,在那里您必须首先安装C编译器。
恐怕我们丢失了pgFoundry档案,在那里是orafce预编译和打包的。
几乎所有的Linux发行版都直接支持orafce --您可以在不从存储库编译的情况下安装它。
请参阅模块
$libdir是符号,用于PostgreSQL扩展目录。它对于任何平台来说都是不同的--它在编译阶段被实际值所取代。MODULE_PATHNAME具有类似的含义。在编译阶段,用编译代码代替有效的实际路径到库。
很抱歉-我们没有提供编译过的文件-主要是由于mainly的高风险。我们没有任何力量和工具来维护所有人的安全。在这一刻,你可以:
一些教程:
https://stackoverflow.com/questions/21523731
复制相似问题