连接oracle数据库的Perl脚本

连接oracle数据库的Perl脚本,perl,oracle11g,dbi,dbd,Perl,Oracle11g,Dbi,Dbd,我不熟悉Perl编程和数据库连接。任何人都可以让我一步一步地知道为Oracle数据库连接编写Perl脚本的过程 我的Perl版本是: 这是为MSWin32-x64-多线程构建的perl 5,版本22,subversion 0(v5.22.0) 版权所有1987-2015,拉里·沃尔 Perl只能在艺术许可证或 GNU通用公共许可证,可以在Perl5源代码工具包中找到 我尝试了以下方法: my $db = DBI->connect("dbi:Oracle:Local","SYSTEM","S

我不熟悉Perl编程和数据库连接。任何人都可以让我一步一步地知道为Oracle数据库连接编写Perl脚本的过程

我的Perl版本是:

这是为MSWin32-x64-多线程构建的perl 5,版本22,subversion 0(v5.22.0)
版权所有1987-2015,拉里·沃尔
Perl只能在艺术许可证或 GNU通用公共许可证,可以在Perl5源代码工具包中找到

我尝试了以下方法:

my $db = DBI->connect("dbi:Oracle:Local","SYSTEM","SYSTEM") or die print ("could not connect! $DBI::errstr \n");
因为我不知道这个“dbi:Oracle:Local”是什么,所以我无法连接到数据库

你能告诉我什么是dbi,Oracle,local吗。如果是主机名和oracle数据库名,如何在计算机中找到相同的名称


我需要在Perl中设置任何ENV变量吗?如果是这样的话,我需要在哪里以及设置什么?

dbi:Oracle
dbi
知道要使用哪个驱动程序。如果您正在连接到Oracle数据库,则永远不会更改这些

Local
是本地系统上的实际数据库名称,或者是
TNSNAMES.ORA
中列出的名称。替换要连接到的本地数据库的名称

接下来的两个参数是用户名和密码

use DBI;
my $dbh = DBI->connect( "dbi:Oracle:databaseName", 'username', 'passwd' ) or die($DBI::errstr, "\n");
如果您正在远程连接,或者需要做一些更详细的事情,请咨询,或者选择其中一种

“dbi”是一个字符串,
“Oracle”是驱动程序类型,
“local”是数据库名称,
第一个“系统”是用户名,第二个是密码

use DBI;
my $dbh = DBI->connect( "dbi:Oracle:databaseName", 'username', 'passwd' ) or die($DBI::errstr, "\n");

首先阅读的基本概念。

对不起,这个问题实在太宽泛了,无法有意义地回答。您是否考虑过雇佣对perl和数据库编程并不陌生的人?
print
在您使用
die
时不需要<代码>模具本身会显示此消息。非常感谢您的评论。但是你能告诉我怎样才能找到我的驱动程序名和数据库名吗?非常感谢你的评论。在这里,我将分享我的TNSNAMES.ORA文件。您能告诉我数据库名、SID、主机名、XE=(描述=(地址=(协议=TCP)(主机=本地主机(端口=1521))(连接\数据=(服务器=专用)(服务\名称=XE)))EXTPROC \连接\数据=(描述=(地址\列表=(地址=(协议=IPC)(密钥=EXTPROC1)))(CONNECT_DATA=(SID=PLSExtProc)(PRESENTATION=RO)))