If there is an error in the syntax or in a column name, I see no problem in throwing exceptions: it's a programming error, not something that could be reached by a user under certain conditions.