Правилният начин за саниране на данни за вмъкване във вашата база данни е да използвате заместители за всички променливи, които да бъдат вмъкнати във вашите SQL низове. С други думи, НИКОГА не правете това:
my $sql = "INSERT INTO foo (bar, baz) VALUES ( $bar, $baz )";
Вместо това използвайте ?
заместители:
my $sql = "INSERT INTO foo (bar, baz) VALUES ( ?, ? )";
И след това предайте променливите, които да бъдат заменени, когато изпълните заявката:
my $sth = $dbh->prepare( $sql );
$sth->execute( $bar, $baz );
Можете да комбинирате тези операции с някои от методите за удобство на DBI; горното също може да бъде написано:
$dbh->do( $sql, undef, $bar, $baz );
Вижте документите на DBI за повече информация.