Some basic questions RRS feed

  • Question




    I have done some reading , and i'm very interested in using the sync framework for a future project.  Most articles i read were quite functional (msdn.microsoft.com/sync) not technical.


    i do have 2 questions:


    1) What kind of version of .NET is need for this?


    2) Is it possible to use this to sync 2 databases on sql 2005?



    • Moved by Max Wang_1983 Friday, April 22, 2011 8:33 PM forum consolidation (From:SyncFx - Microsoft Sync Framework Database Providers [ReadOnly])
    Friday, February 29, 2008 1:25 PM

All replies

  • Hi,


    Just so happens I'm looking at this at the moment as well.


    1. You'll need .NET v2.0. It looks to be the baseline framework that new framework updates will be build on (.NET v3.0/.NET v3.5 for example wrap .NET v2.0)


    2. Yes I think it would but I think that SQL Server 2005 has synchronisation features build in. Not sure of the terminology but you can create mirrors/replicas of databases that synchronise with each other. You can also do it with DTS and a scheduled task also. 

    Friday, February 29, 2008 1:33 PM
  • Regarding question #2, we ship a handful of providers with Sync Services for ADO.NET.  For v1.0 which is bundled with Visual Studio 2008 and SQL Server CE 3.5, we include the following two providers:


    • SqlCeClientSyncProvider - client provider for SQL Server CE
    • DbServerSyncProvider - Server provider for any database vendor that has a corresponding ADO.NET provider

    With these two providers, you are able to sync between your server and any client running SQL CE.  For v2.0 ctp1 which ships via the web (msdn.com/sync) and with SQL Server 2008, we added an additional provider called DbPeerSyncProvider that has been tested against SQL Server 2005 and 2008.  The intent of this provider was to allow you to sync in a peer to peer fashion, negating the need to go through a central server and may be overkill depending upon your scenario.


    Could you describe the business requirements associated with this project?




    Sean Kelley

    Program Manager








    Saturday, March 1, 2008 12:05 AM
  • Hi S. K. ,


    The project is a small sync project.  We have a test environment, and a production environment.  Once the data entered by the users on the test environment is tested thorough, some of this data must be synchronized with the production environment.  So the only thing we need to do is update the production environment with the changes on the test environment.  When the users choose to start a sync they must choose the data they changed that must be synced, so not all (new, modified, deleted) data must be synced, only the data they think has been tested enough.


    We work with 2 SQL server 2005 databases, on a win2003 server.  I read the sql server 2008 is able to track changes to the databases (based on tick counts per replica), so when sync'in sql is able to know what's changed.  Does sql 2005 also has this feature?  Or who needs to track these changes?

    Monday, March 3, 2008 7:04 AM

    Thanks for the clarification.  The Sync Framework was built with the following two scenarios in mind:

    • Client-Client Sync
    • Client-Server Sync

    What you are describing is a server-server scenario and because these scenarios typically require low-latency, high throughput, all changes vs. net-changes and transactional consistency; the sync framework may not be a good fit here.


    Have you looked into Transactional Replication or Integration Services by any chance?  If so, can you describe the limitations that may have led you to look at the Sync Framework?



    Monday, March 3, 2008 11:49 PM
  • No, didn't looked into Transactional Replication or Integration Services .  Actually we still need to start with investigating how we can build such a solution for our business.  But i knew we will start with this in a few weeks, and a few days i bumped into this forum, and that's why i started asking some questions and did some reading about the sync framework.


    I'm going to take a look at Transactional Replication or Integration Services, if you have good resources on the net, you may share them with me Smile if you want.


    In our solution users in the test environment must select the data they want to see synced with the production database.  So first we need to show them all the stuff that has been changed since the last sync, then they make a selection and only this data must be synced.  Is this possible with Transactional Replication or Integration Services?


    and thx for the info & your time.

    Tuesday, March 4, 2008 6:52 AM