http://www.perlmonks.org?node_id=513947


in reply to OT: Postgres, now(), and bindvars

You can't put a ? inside a quoted string in your SQL statement as DBI won't see it as a placeholder, but as a simple string. I just pulled the following out of some existing code I wrote a while ago, so I know it works:

INSERT INTO eventdates (eventdate, event, date) VALUES (?, ?, ?::timestamp + ?::interval)

So what you need to do is add the ' minutes' part to a perl variable and pass that entire string to the placeholder.