Changing TDatabase

My application uses two different databases--one local one remote.  I
have all of my datasets using a single connection (through
TDatabase.Databasename).  The user will select the connection and the
application will reconfigure the TDatabase component--change drivers,
change params, etc.  The new database is connected and evertything is
okay until I go to a dataset.  The dataset (TQuery) has the correct
Databasename but the the run-time property Database = nil.

How can I change my connection without losing all the links to my
datasets?  I have a lot of datasets...

TIA, C--