我正在perl下工作。我正在實現一個動態查詢,並且我遇到了這個問題,如果你在我的搜索過程中可以給我一條建議。perl從selectrow_array獲取數據庫信息
現在,我的靜態查詢:
my $envoi_numfact = $dbh->selectrow_array("SELECT envoi_numfact FROM user.envoi where envoi_reference='hapiness'");
print Dumper($envoi_numfact);
我有一個好結果:
$VAR1 = '1611029546';
所以我想在動態查詢改造它,如:
my $envoi_numfact = $dbh->selectrow_array("SELECT envoi_numfact FROM user.envoi where envoi_reference=?",undef,$hash_infos{ope_ref} );
其中$hash_infos{ope_ref}
代表envoi_reference
。
其結果是,我有:
$VAR1 = undef;
任何couls幫助我嗎?
是什麼在'$ {hash_infos} ope_ref'? – melpomene
你的查詢是正確的,你的Perl語法是正確的。如果沒有結果,那是因爲查詢不返回任何結果。這可能意味着'$ hash_infos {ope_ref}'變量中的數據不對應於數據庫中的一行。 – simbabque
'selectrow_array'返回一個數組,而不是數組引用。所以寫'我的@envoi_numfact = ...'或'我的($ envoy_numfact)= ...'。 – PerlDuck