在 Perl 中使用 DBI 连接到 Oracle 数据库,在 Windows 中出现 ERROR OCIEnvNlsCreate

Posted

技术标签:

【中文标题】在 Perl 中使用 DBI 连接到 Oracle 数据库,在 Windows 中出现 ERROR OCIEnvNlsCreate【英文标题】:Using DBI to connect to Oracle Database in Perl getting ERROR OCIEnvNlsCreate in Windows 【发布时间】:2021-03-03 22:38:05 【问题描述】:

在 windows 机器上,尝试通过 Perl (strawberry-perl-5.32.0.1) 连接到 Oracle 数据库时出现以下错误。

错误:

failed: ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var or PATH (Windows) and or NLS settings, permissions, etc.

环境变量 ORACLE_HOMEPATH 正确指向 oracle insta 客户端 12.2 版本。

代码如下:

my $dbh = DBI->connect('dbi:Oracle:host=hostname;service_name=servicename;port=xxx','username','password');

【问题讨论】:

【参考方案1】:

问题已解决。 ORACLE_HOME 需要设置在系统级环境变量而不是账户级环境变量

【讨论】:

以上是关于在 Perl 中使用 DBI 连接到 Oracle 数据库,在 Windows 中出现 ERROR OCIEnvNlsCreate的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Perl 连接到 MySQL?

Perl dbi 运行 psql 代码

使用DBI将httpd24连接到Informix的Redhat

在 perl 中从 GCE 远程连接到 Google Cloud SQL 时出错

在Perl的DBI连接方法中设置keepalive的任何方法

Perl DBI 语句句柄和错误处理