好的,所以这个问题困扰了我一段时间。我正在运行一个连接到数据库并从查询中返回值的模块。我有一个脚本调用模块并尝试从模块的子例程返回值。但是由于代码比文字更好,这就是我所拥有的:
sub selectCustomerName ($code){
connectDB() or die "Failed in subroutine";
#Selects customer name from customer table where code is $code
my $selectName = "SELECT * FROM customers WHERE code = ?";
my $sth = $dbh->prepare($selectName);
$sth->execute($code);
my $hash = $sth->fetchrow_hashref;
$hash->{customer_name} = $name;
return $name;
$sth ->finish();
$dbh->disconnect();
}
这是我的模块,这是我的脚本:
#!/usr/bin/perl
require Connect;
use warnings;
my $dbh = Connect::connectDB();
my $results = Connect::selectCustomerName('38d');
print $results;
从大量的混乱和切换变量中,我得到了打印 0 和哈希引用,但从来没有打印出哈希的实际值。任何帮助都会非常感谢!