While we are on the subject, does the Database Deployment Toolkit support upgrading of replicated databases?
I have been sick over the weekend and my wife is trying to keep me in bed so I don't get worse...but she had to go to the store
so I thought I would do a little catching up on the forum.
To answer your question, yes, the DDT will most definitely update a database structure for a SQL Server that uses replication. When doing this, however, it is best to update the structures when there will be the least amount of activity on the databases (none if possible). but in any case, you can actually write a program to deploy your structures using the DatbaseMigrator class. There is a sample that comes with the framework that shows how to do this. You can create a program that updates all servers on separate threads at the same time...reducing deployment time and making the process more streamlined. It is the same thing that you would do otherwise, just updating multiple servers on different threads at the same time.
On a separate note here, there has been a lot of discussion on GUIDs and sequential GUIDs. There is one problem wth sequential GUIDs that exists when you will not be talking to a server and you need to come back in and merge the data. It is the same problem that exists when using integers. If you come up with a mechanism to create sequential GUIDs, and you take a laptop, let's say, offsite and it creates records, and there are other laptops doing the same thing, then you can definitly have sync issues. So this then turns into the situation where each laptop has its own pre-set range to work within, with ends up having the same issues as using a PK.
I recommend doing a little test. I am of the mind that it is easier to deal with the one outlier that may (though it is extremely unlikely) produce a duplicate GUID. If you create a program that creates new records non-stop using the System.Guid.NewGuid() for 24-48 hours (this will prouce some SERIOUS records!) I believe that you will find that there will more than likely never be a duplicate. If you del with disconnected data (pre-merge or replication) in thi maanner and perform a "pre-merge" query to ensure that there are no duplicates, then you don't get into the syncing issue of sequential GUIDs. This is just some food for thought.