hi team, we have a DEMODB server and 18 laptops, i want reflect the database changes written to the laptops, following these rules. 1.laptops are not available in a periodic manner. 2.laptop user has no responsibility to update the data as this is a DA's job to update it. availability i assume; 1. pull subscription can be implemented to update the data when in laptop comes online. 2. just make a back up job to copy the differential backup to the laptop folder , then create a batch file to restore the data. please sugggest me any other changes to be done.
You could try one of the following: - Snapshot Replication (similar to a full backup being created and restored on the target system) - Merge Replicaiton (if the laptops perform writes that should be uploaded to the central system) - Transactional Replication (be careful of subscription expiration) - Write your own bulk loading tool (using .Net or SSIS or bcp or....) **EDIT: I Misread ramesh's question - here is my revised recommendation:** I recommend Merge Replication for this. The laptops will be able to upload their changes when they connect to the server - this can be done by starting an agent job when the connection is established (it is possible to do this through .Net too). **EDIT End** Writing a bulk loader may be viable if it is just a couple of tables and you have an aversion to replication (some people just don't like it).
Based on everything described, I'd go either with Merge Replication, like @WilliamD says, or look into possibly implementing BizTalk. With BizTalk you could treat the data in the laptops as part of an extended transaction. That would allow for the intermittent connection. It'd take a bit of work, but almost anything you do in this realm is going to take a bit of work.