se existir (selecione * em dbo.sysobjects onde id = object_id(N'[dbo].[s_LoadPackageToServer]') e OBJECTPROPERTY(id, N'IsProcedure') = 1)
procedimento de eliminação [dbo].[s_LoadPackageToServer]
GO
Criar procedimento s_LoadPackageToServer
@PackageName varchar(128) ,
@NomeArquivo varchar(500) ,
@Nome de usuário varchar(100) ,
@Senha varchar(100)
como
/*
exec s_LoadPackageToServer
@PackageName = 'meupacote' ,
@NomeArquivo = 'c:dtspckgsmeupacote.dts' ,
@Nome de usuário = 'sa' ,
@Senha = 'senha'
*/
declare @objPackage int
declare @rc int
exec @rc = sp_OACreate 'DTS.Package', saída @objPackage
se @rc <> 0
começar
raiserror('falha ao criar o pacote rc = %d', 16, -1, @rc)
retornar
end
exec @rc = sp_OAMethod @objPackage, 'LoadFromStorageFile' , null,
@UncFile = @NomeArquivo, @senha = nulo
se @rc <> 0
começar
raiserror('falha ao carregar o pacote rc = %d, pacote = %s', 16, -1, @rc, @PackageName)
retornar
fim
exec @rc = sp_OAMethod @objPackage, 'SaveToSQLServerAs' , null,
@NewName = @PackageName, @ServerName = @@ServerName, @ServerUserName = @Username, @ServerPassword = @Password
se @rc <> 0
começar
raiserror('falha ao carregar o pacote rc = %d, pacote = %s', 16, -1, @rc, @PackageName)
retornar
fim
ir
exec s_LoadPackageToServer
'meu pacote' ,
'c:DTS_AN2CP_DIC.dts',
'sa',
'sa'