One of the database systems I work with (I'll call it database A) was essentially sharded into 3 schema-identical copies. This was easy to source control, and when a change was made to any of the copies, it would go to all the copies.

A few months ago a change was made. A new database was created (not sharded, I'll call it database B), and a view was created in database A to reference database B.

The problem is that the view is not the same between the three instances of database A. Database B has 3 schemas: one to match each of the 3 instances of database A. The difference in the view between the three instances is only to point to the different schemas.

We're using TFS2015 to source control. There'd be too big of an undertaking to change this DB structure, but I'm not sure how to source control the view that has to be different between the 3 instances of database A.

Is there a way to source control this without having three copies in TFS?

  • Did you try mirroring instead?
    – Karlomanio
    Commented Jan 11, 2019 at 20:29
  • @Karlomanio unfortunately the data in each instance is different. Just the schema is the same between the three copies Commented Jan 14, 2019 at 17:49
  • The question was if there was a way to source control this. Not how to solve your current dilemma. My answer was based on how to resolve this and keep them together in the future, not in the present. Did I misunderstand your question?
    – Karlomanio
    Commented Jan 14, 2019 at 17:51
  • I'm thinking so, because database mirroring has to do with availability and not source control. Commented Jan 14, 2019 at 17:55
  • That was just a solution to ease source control- mirroring. I know that mirroring is not source control, but it would make responding to the different environments easier. Mirroring is not just about availability. It's also about providing the same environment to others without having to make or provide a complete copy.
    – Karlomanio
    Commented Jan 14, 2019 at 18:28


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.