在SQL Server 2008中创建DTS包?

时间:2014-06-26 13:53:16

标签: sql sql-server-2008-r2 dts

我正在使用下面的脚本来创建DTS包,它在SQL 2000上工作正常,但它在第一步失败"无法创建包..."在SQL Server 2008 R2上。如果有人知道答案,请帮忙

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO

实际查询

print 'creating a DTS package'

DECLARE @objPackage int
DECLARE @returnValue int
EXEC @returnValue = sp_OACreate 'DTS.Package', @objPackage output
IF @returnValue <> 0
BEGIN
    raiserror('failed to create package returnValue = %d', 16, -1, @returnValue)
    return
END
EXEC @returnValue = sp_OAMethod @objPackage, 'LoadFromStorageFile' , null,
    @UncFile = @FileName, @password = null
IF @returnValue <> 0
BEGIN
    raiserror('Custom Error fileName = %s , description = %s', 16, -1, @FileName, @Description)
    raiserror('failed to load package returnValue = %d, package = %s', 16, -1, @returnValue, @PackageName)
    return
END
EXEC @returnValue = sp_OAMethod @objPackage, 'SaveToSQLServerAs' , null,
    @NewName = @PackageName, @ServerName = @@ServerName, @Flags = 256
IF @returnValue <> 0
BEGIN
    raiserror('failed to save to SQL server returnValue = %d, package = %s', 16, -1, @returnValue, @PackageName)
    return
END

1 个答案:

答案 0 :(得分:1)

SQl Server 2008不使用DTS pacakages。您应该创建SSIS包。

Therre是在SQl Server 2008中使用DTS的一些可用性,m,但它并非出自teh box。在任何情况下,我都不会使用它来创建新的DTS pacakages,但只能管理现有的,直到它们可以转换为SSIS。我们的政策是,每当我们不得不对DTS pacakge进行更改时,我们都会对其进行转换。但是下面的链接可以帮助您找到需要在SQL Server 2008中使用DTS的技术。

http://msdn.microsoft.com/en-us/library/ms143755(v=sql.105).aspx