The problem with using open_manager_with_config is that you have to make assumptions about which database binding is being used.
Off the top of my head, here are 3 alternative solutions:
1. You could cache the previous value.
2. You could fix the problem downstream by using a weewx service.
3. You could use multiple inheritance, so your driver inherits both from weewx.drivers.AbstractDevice and from weewx.engine.StdService. Getting a database manager is then easy:
dbmanager = self.engine.db_binder.get_manager(self.data_binding)
See the Vantage driver for an example of using multiple inheritance (although it does not access the database).
But, really, you should relocate the sensor!
-tk