This script will take an entire server and migrate the data to another server. It walks down database by database, table by table. It requires that the schemas match on the two servers. (A future enhancement will detect any differences.) It has also been streamlined with much of the hard coding taken out. There are four variables at the beginning where you specify the source and destination servers and passwords. It has been designed to operate under the sa account. This script does the following: turn on select into/bulk copy on the destination server, turn on truncate on checkpoint on the destination servver (to prevent the tran log from filling up), truncate the destination table, drop the indexes on the destination table, bcp out the data from the source server, bcp the data into the destination server, recreate the indexes, reset the dboptions for select into bcp and truncate on checkpoint to what they are on the source server. Thsi script will clean up after itself and leave no trace of the bcp files when done. The only changes you might need to make to this are the directory locations. Future enhancements are to turn off declarative RI, compare the table schemas on the source and destination servers before truncating, and add two optional parameters such that you can do a single database or a single table. This also fixes a bug with not properly setting the db options.
For SQL Server 6.5
Author: Mike Hotek
Disclaimer: We hope that the information on these script pages is
valuable to you. Your use of the information contained in these pages,
however, is at your sole risk. All information on these pages is provided
"as -is", without any warranty, whether express or implied, of its accuracy,
completeness, or fitness for a particular purpose...
Back to Database Journal Home