- 論壇徽章:
- 0
|
求助各位大俠啊,用perl 在客戶端無法連接Oracle服務(wù)器端,報錯如下:
wyc@ubuntu-server:~/script$ ./dbi2.pl
DBI connect('host=192.168.121.1:XE','scott',...) failed: ORA-12154: TNS:could not resolve the connect identifier specified (DBD ERROR: OCIServerAttach) at ./dbi2.pl line 9
Can't call method "prepare" on an undefined value at ./dbi2.pl line 10.
tnsnames.ora 文件配置如下:
wyc@ubuntu-server:/usr/lib/oracle$ cat tnsnames.ora
XE=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.121.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME=XE)
)
)
連接程序如下:
wyc@ubuntu-server:~/script$ cat ./dbi2.pl
#!/usr/bin/perl -w
use DBI;
my $dbSid = "XE";
my $dbHost = "192.168.121.1";
my $dbUser = "scott";
my $dbPassword = "tiger";
my $dbh = DBI->connect("dbi:Oracle:host=$dbHost dbSid", $dbUser, $dbPassword) or print $!,"\n";#($DBI::errstr);
my $sth = $dbh->prepare("select * from table" ;
$sth->execute;
my @recs = "";
while ( my @recs=$sth->fetchrow_array) {
print $recs[0].":".$recs[1].":".$recs[2]."\n";
}
$dbh->finish;
$dbh->disconnect;
exit if(1);
已在百度、google搜索多時,無果,郁悶啊 |
|