I have an application which uses four databases in different geographical locations. All the databases contains same tables and only the database name is different according
The Ideal way to achieve this is by using a multi-dimensional system like OLAP. But see if you can create a view out of those databases. Then you just need to query the view (i.e. just a single database connection). Also you can still use multiple database connections if you want.