Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ilano

Como executar esta procedure do cliente no servidor

Recommended Posts

Olá pessoal,

 

Tenho uma aplicação em Delphi 7 que cria uma Stored Procedure no banco SQL Server 2008 R2 que está no servidor. Só que ao executar aparece a mensagem:

 

 

O código está da seguinte forma:

 

 

procedure TFrmBackupDevice.GerarBackup;

begin
With SERVICOS Do
Begin
Close;
SQL.Clear;
SQL.Add(' SELECT SCHEMA_NAME(p.schema_id), p.NAME ');
SQL.Add(' FROM sys.procedures p ');
SQL.Add(' WHERE p.name = ' + QuotedStr('spBKP_' + ComboBaseOrigem.Text));
Open;
End;
If SERVICOS.RecordCount = 0 Then
Begin
With SERVICOS Do
Begin
Close;
SQL.Clear;
SQL.Add(' CREATE PROCEDURE spBKP_' + ComboBaseOrigem.Text);
SQL.Add(' AS ');
SQL.Add(' BEGIN ');
SQL.Add('');
SQL.Add(' BACKUP DATABASE ' + ComboBaseOrigem.Text + ' TO DISK = N' + QuotedStr(TxtDiretorio.Text + '\' + ComboBaseOrigem.Text + '.bak') + ' WITH NOFORMAT, INIT, NAME = N' + QuotedStr(ComboBaseOrigem.Text + '-Full Database Backup') + ', SKIP, NOREWIND, NOUNLOAD, STATS = 10 ');
SQL.Add('');
SQL.Add(' END ');
ExecSql;
End;
End;
With SERVICOS Do
Begin
Close;
SQL.Clear;
SQL.Add(' EXEC dbo.spBKP_' + ComboBaseOrigem.Text);
ExecSql;
End;
end;

 

A Procedure é criada, roda bem direitinho lá no servidor, cria o backup, tudo maravilhoso. Mas, quando o cliente executa da aplicação Delphi não dá certo. O que pode estar dando errado?

 

O arquivo gerado é esse:

 

 

USE master

GO
BACKUP DATABASE [conacc] TO DISK = N'F:\CONACC.bak' WITH NOFORMAT, INIT, NAME = N'CONACC-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO

 

Grato,

 

Ilano.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.