[eluser]WanWizard[/eluser]
Short answer: you can't.
This has been discussed numerous times on this forum. The routing decision is taken way before CI is fully up and running (which doesn't happen until the controller is called), and the database is accessable.
Several options have been proposed. One is to have your routing in a database, and after an update in the admin interface, generate a new routes.php from the info in your database. Some use redirects, catch all 'unknown' requests with the default controller which then does a lookup and a redirect, which then need to be processed by the routes. This doesn't work when your URI's are completly dynamic.
We at ExiteCMS went a different route. We don't use routes at all, we route all requests to the default controller. The default controller has access to all CI resources. It will process the request using a "virtual" website folder tree build in the database, and based on that result load the corresponding controller(s). To do that we've extended the loader class to be able to have one controller load another.