DECLARE @object int
DECLARE @hr int
DECLARE @property varchar(255)
DECLARE @return varchar(255)
EXEC @hr = sp_OACreate 'SQLDMO.SQLServer', @object OUT
IF @hr <> 0
BEGIN
print 'error create SQLDMO.SQLServer'
RETURN
END
EXEC @hr = sp_OAMethod
@object, 'Connect', NULL, 'ServerName', 'Login', 'Password'
IF @hr <> 0
BEGIN
print 'error with Connect'
RETURN
END
EXEC @hr = sp_OAMethod @object, 'VerifyConnection', @return OUT
IF @hr <> 0
BEGIN
PRINT 'error with VerifyConnection'
RETURN
END
select @property = 'EXEC master..xp_cmdshell "osql -S ServerName ' +
'-U LoginName -P password -i c:\trig.sql"'
EXEC @hr = sp_OAMethod @object, 'ExecuteImmediate', Null , @property
IF @hr <> 0
BEGIN
print 'error with ExecuteImmediate'
RETURN
END
-- ahother way to run a T-SQL script
select @property = 'osql -S ServerName -U LoginName -P password -i c:\trig.sql'
EXEC @hr = sp_OAMethod @object, 'CommandShellImmediate', Null , @property
IF @hr <> 0
BEGIN
print 'error with CommandShellImmediate'
RETURN
END
|