Im not sure I totaly follow your problem,
But i would query the database initially using a session var
or defaults as you are doing if the users preferences were set, if
they were set then id set the session Var to something out of their
preferences and pull a recordset based on that, Or I would try and
do it with a cookie and query from what it held about the user.
If your user has to sign up to join your database I would ask
for the info in the application form so when it gets added you have
the data to query with before they log in..
Hope thats on the right lines of your problem..
Regards
Tag