in reply to DBI query where table name is a variable

Are you allowed to have a table name as a variable?

DBI and SQL never see the variable name.
"select confidence_str from $table where probeset_id = ?"
is exactly equivalent to
"select confidence_str from " . $table . " where probeset_id = ?"
Either table isn't set at that point, or it isn't set to a properly escaped table name.

What's the value of $table? Is there a space in it? If so, you'll have to properly bracket it according to your database's version of SQL. (MySQL would expect SELECT * FROM `Table Name`.)