The approach
jwest suggested is the best you can do for avoiding hardcoding, but honestly I think you are worrying about this way too much. As long as these constants are declared in an obvious place, it seems fine to me. After all, this class where you're putting them is the class that encapsulates all knowledge about how to get this data from the database, right? Of course it's going to change if you change the properties that your objects have.