Items selected, but identical
SteveSmithSQL
Posts: 3
(Note: I tweeted this to @KickAssSupport but I think it needs a longer explanation...)
My question, broadly, is: Is there a way to see items in a SQL Compare project that are selected and also identical?
This is my scenario:
1. Let's say I make modifications to objects A, B, and C in my development database.
2. I create a SQL Compare project and select A, B, and C. I save this project, "ChangesForProjectX.scp". I am not ready to deploy these changes, I just want to make sure my SQL Compare project is ready when I am.
3. At some later point, I decided I don't need the changes to B, so I remove them from my development database.
If I open up ChangesForProjectX in SQL Compare, I see two items selected: A and C. That looks fine.
What I can't see is that ChangesForProjectX still has B selected-- I just can't see that because B is identical between development and production. Nor can I deselect it. As far as I can tell, the project just has A and C.
The problem that comes up is that I'll be maintaining my ChangesForProjextX project, and then one day (seemingly) out of the blue, object B shows up as a selected object, because someone else made a change to B.
This causes us some grief because we use the SQL Compare project as something of a build set that is maintained over time, but there's no accurate way to tell what is selected-- the only thing you can see is which objects will get synced as a result of the selection applied to the current database state.
Looking at it closer, this may be a more complicated issue because I see you actually are persisting the selection state of groups too-- which makes it even harder to evaluate what's selected. (E.g. When there are four roles that differ and all four are selected, is this the result of having explicitly selected each of the four roles, or of having select the "roles" group?)
I guess what I'm requesting is a way to view-- either on screen or via a report, which items are selected, as opposed to the implications of those selections on the current source/destination combo.
Thanks!
My question, broadly, is: Is there a way to see items in a SQL Compare project that are selected and also identical?
This is my scenario:
1. Let's say I make modifications to objects A, B, and C in my development database.
2. I create a SQL Compare project and select A, B, and C. I save this project, "ChangesForProjectX.scp". I am not ready to deploy these changes, I just want to make sure my SQL Compare project is ready when I am.
3. At some later point, I decided I don't need the changes to B, so I remove them from my development database.
If I open up ChangesForProjectX in SQL Compare, I see two items selected: A and C. That looks fine.
What I can't see is that ChangesForProjectX still has B selected-- I just can't see that because B is identical between development and production. Nor can I deselect it. As far as I can tell, the project just has A and C.
The problem that comes up is that I'll be maintaining my ChangesForProjextX project, and then one day (seemingly) out of the blue, object B shows up as a selected object, because someone else made a change to B.
This causes us some grief because we use the SQL Compare project as something of a build set that is maintained over time, but there's no accurate way to tell what is selected-- the only thing you can see is which objects will get synced as a result of the selection applied to the current database state.
Looking at it closer, this may be a more complicated issue because I see you actually are persisting the selection state of groups too-- which makes it even harder to evaluate what's selected. (E.g. When there are four roles that differ and all four are selected, is this the result of having explicitly selected each of the four roles, or of having select the "roles" group?)
I guess what I'm requesting is a way to view-- either on screen or via a report, which items are selected, as opposed to the implications of those selections on the current source/destination combo.
Thanks!
Comments
The short answer is that you're trying to use the project file for something we probably didn't intend you to use it for, which is why you're having trouble.
Longer answer:
The idea of being able to select certain objects in a project is so you can quickly work with just those (so for instance if you're working on a feature in your database you may want a project for all the tables/procs/views that relate to that).
These are persisted in the file irrespective of whether the objects are different/identical etc. so if you open the same project later on, and object that was previously selected still will be. I'm not sure of an easy workaround to this, or a way of getting the information you want - it could be worth you suggesting some enhancements over on our Uservoice forum see here and we can gauge from that if other people would also find it useful - if so, then we'd be able to schedule time to look into updating it.
Redgate Software
Thanks as always to the whole Redgate team for building such awesome products and providing such great support. I can't work without them! (Well, I can, but why would anyone want to?)
Redgate Software