我们有意将其Sql 2008数据发送给使用SQL 2000的其他客户。现在很显然,这目前没有工作,所以我试图创建一个“通用”备份过程,使我们可以在Server 2000上备份和恢复数据(因为SQL2000是所有客户或客户中最不常见的部分)。现在,我们正在创造我们的备份这样(C#):备份SQL 2008数据库在SQL 2000上恢复.NET
Server server = new Server(GetServerConnection(serverName, userName, password));
Backup backup = new Backup();
backup.Action = BackupActionType.Database;
backup.Database = GetDatabasePrefix() + databaseName;
backup.Devices.AddDevice(fileName, DeviceType.File);
backup.Initialize = true;
backup.SqlBackup(server);
我的第一个问题是,是否有“力”的备份运行的SQL 2000的任何方式,即使数据库是SQL 2005或2008年?
此外,我们正考虑通过使用数据库上的bcp过程来封装和解包表并将它们压缩在一起。在压缩过程中,我会放入一个标题标志以声明它是“通用”备份。这看起来是否合理,还是有更简单的方法呢?由于应用程序与服务器无关,因此所有的列和表都应该相同。谢谢您的帮助!
我很欣赏详细的回复,但我的主要目标是以编程方式使用此功能。我不能要求我们的客户这样做,我需要在我们的应用程序中提供手段。 – Kevin 2010-02-10 22:15:32