Использовать заполнители. Вместо ввода '$who'
в свой оператор SQL подготовьте с? вместо этого, а затем либо связать $ who, либо выполнить с $ who в качестве подходящего аргумента.
my $sth = $dbh->prepare_cached('INSERT INTO FOO (WHO) VALUES (?)');
$sth->bind_param(1, $who);
my $rc = $sth->execute();
Это безопаснее и быстрее, чем пытаться сделать это самостоятельно. (В DBI есть метод «цитата», но он лучше).