You can use placeholders with DBI and SQL2000, but only in certain configurations. If you are running this code on windows then I believe
DBD::ODBC will allow placeholders - but my memory is rusty. If running on a unix system then you can also use
DBD::ODBC with
freetds and iodbc