From: gavin@... Date: 2005-02-10T04:15:05+09:00 Subject: Re: DBI INSERT with variables I'm sorry, I completely failed to see the problem you were facing, so sure was I that I had a solution :) I can't see an easy solution myself. The problem, is that if you do something like: get_article = dbh.prepare( "SELECT ? FROM tblFoo" ) get_article.execute( 'aTitle' ) then DBI does its 'magic' of properly turning the values you pass to execute into the a valid SQL representation of that item. For the above, DBI creates the SQL equivalent of: SELECT 'aTitle' FROM tblFoo instead of SELECT aTitle FROM tblFoo or SELECT [aTitle] FROM tblFoo I don't see any way to get DBI to 'cast' your value from a string to a column name. To reap the benefits of single-source location for your statement, but not the statement preparation aspect (does Access even support this?), you'll need to do some string substitution on your own. (AFAICT)