PerlのDBIを用いてselect文を実行し、各行を読み込み処理を行う際に

$sth->bind_columns(\$name, \$old, \$language);
while($sth->fetch()){
...
}

というコードを実行しているのですが、DB上の$oldにデータが入っていない行の
while文中の処理が省略されて、次の行に移行してしまいます。

$oldが空の場合も処理を行うようにすればどうすれば良いですか?