How can we help you today? How can we help you today?
Andras B
grchristin wrote: We changed the names of a couple of tables in our DB. When trying to synchronize our development DB to our test production DB we received errors that it couldn't create some constraints because they already existed and rolled back any changes. I had to manually rename the tables, re-run the compare and then run the synchronization. It then worked. Bug? Should SQL Compare 4 be able to handle it? Hi, Constraint names must be unique in the database. This is an ugly limitation of SQL Server, especially since constraints can only be accessed via their parent tables. You are right that we are not handling such conflicts. On the other hand it is an interesting question about how we should handle it. Clearly we cannot just drop constraints from tables that were not selected for synchronization. Similarly we should not move constraints to other tables. One thing SQL Compare can do, is that if the renamed table is selected, it can drop it/or resolve the constraint problem by making it the same as the source table (if there is any). Therefore these conflicts require manual intervention. A similar problem occurs when one tries to migrate a table (say "herTable") to another database, but that database already has another non-table object (e.g. a function) called "herTable". Once again the only solution that can be used from SQL Compare would be to explicitly select the "herTable" function as well, in which case it will be dropped as expected, and the synchronization will succeed. But, clearly, we cannot select objects to be deleted automatically. Regards, Andras / comments
grchristin wrote: We changed the names of a couple of tables in our DB. When trying to synchronize our development DB to our test production DB we received errors that it couldn't create some c...
0 votes
Just a short followup. This bug only affects REFERENCES and EXECUTE permissions on user defined types that are migrated from 2005 to 2000. Regards, Andras / comments
Just a short followup. This bug only affects REFERENCES and EXECUTE permissions on user defined types that are migrated from 2005 to 2000. Regards, Andras
0 votes
monty wrote: Hi Andras, According to the blog entry you mentioned in your last post on this topic, the comparing of the default values has been taken care of, however, I'm still getting differences being displayed in SQL Compare. eg Server1 (SQL Server Express 2005 (9.0.1399)) [ContractFactor] [float] NULL DEFAULT ((0.0)) Server 2 (SQL Server 8.0.194) [ContractFactor] [float] NULL DEFAULT (0.0) Is this just a problem that can't be solved, or is there a setting somewhere that does this (I can't seem to see one)?? thanks Mark Hi Mark, Brian is right that these defaults cannot be reproduced the same way on a target database. This is a SQL Server limitation. And this is the reason why we compare them at semantic level. If this is the only difference between two tables we should mark them as being equal. Note, that in the bottom panel we display textual differences, so there the different rows are marked as different. I have created a table with the above column specification, and as expected the tables were marked equals, but the bottom panel (that shows the scripts) a textual difference is shown. Please let me know if you are experiencing a different behaviour. I would also appreciate if you could tell me what non default options you are using. Regards, Andras / comments
monty wrote: Hi Andras, According to the blog entry you mentioned in your last post on this topic, the comparing of the default values has been taken care of, however, I'm still getting differen...
0 votes