I need a suggestion on the scenario I have, multiple application sharing same data.

-I have a set of tools which is developed independetly, but there is a set of data they share.
-Its around 7 Applications sharing some of the basic data and few data are specific to the application.
-I also have to maintain a local copy of the central DB and update accordingly.
-Is it a better idea to for independent database per application or having a single application?

I find it is better to go for single database per application since,
-Maintanance becomes easy
-Need not have an extra job of hiding one application data in another.
-Achieve scalability
-Time saving in terms of implementation, need not check for too many things.
-Update logic also becomes easy

Anyhow I am worried about the common data which I would be duplicating in the above case, is there a way to expose common data to all the applications having specific data separate?

what type of DB will you be using ? you could just create stored procs specific to each application and just use a single DB.

Or

You could have a number of DB's on a single server and just access then when and where they are needed. It's easily done through a stored proc from 1 DB accessing tables in another

I would be using Sqlite which doesn't support stored procedure. However I cannot have stored procedure for every operation.

And also the design should be such that the common data need not be added in every database, this should be done only once. So I need a central control to maintain common data and also deal easily with the specific data.

Sure can, just store the data in the users app directory. Check out this for how to find the App directory.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.