SMO 中的向后兼容性
使用以前版本的 SQL Server 编写的 SMO 应用程序可以通过使用 SQL Server 2012 中的 SMO 进行重新编译。
迁移 SMO 应用程序
必须删除对旧版 SQL Server 中 SMO 动态链接库的引用,而且必须包括对随 SQL Server 2012 提供的新 SMO 动态链接库的引用。
至少要引用以下内容:
Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.Smo
Microsoft.SqlServer.Management.Sdk.Sfc
连接类、SMO 实用工具类和基础类都需要这些文件。
注意 |
---|
SmoEnum.dll 已被移除,所以,必须从 SMO SQL Server 2012 项目中移除对它的引用。 |
命名空间也已经更改,所以可以使用以下内容:
对于 Visual C#
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;
对于 Visual Basic
Imports Microsoft.SqlServer.Management.Smo
Imports Microsoft.SqlServer.Management.Common
如果您的代码使用 Urn 功能,例如 Server.GetSqlSmoObject(Urn),则必须链接到 Microsoft.SqlServer.Management.Sdk.Sfc 命名空间。
如果您的代码直接使用 Transfer 对象,则需要链接到 Microsoft.SqlServer.Management.SmoExtended 命名空间。
迁移代码时,可能会需要修改代码。 这是因为有若干 SQL Server 2005 和 SQL Server 2008 功能在 SQL Server 2012 中已不推荐使用。 有关不推荐使用的功能的详细信息,请参阅 SQL Server 2012 联机丛书中的 SQL Server 2012 中不推荐使用的数据库引擎功能。