• If you really need to go down the route of changing the collation of your database, maybe this utility can help:

    http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=12753

    It was a lifesaver for a sql2000-to-2008 migration project we recently completed.

    Our requirements were different from yours, but we also needed to change the collation of an entire database.

    In our case, the old SQL Server 2000 instance / database used SQL_Latin1_General_CP1_CI_AS, and the new SQL Server 2008 instance uses Latin1_General_CI_AS

    During the migration we had an automated daily process that:

    Restored the latest backup of the old database to the new server.

    Ran the query that had been generated with the above utility for the old database against the restored database. This updated the collation of the database and all relevant objects in it.

    Ran a series of scripts to raise the compatibility level, reconnect some orphaned users, and other housekeeping/cleanup tasks

    On switch-over day we simply stopped the daily restore and pointed our users to the new database.