Ich benutze SSMS 10.50 für den Zugriff auf SQL Server 2008 R2 und Ich bin sehr neu in SQL-Codierung. Meine Login-ID ist SA. Ich habe eine gespeicherte Prozedur erstellt und möchte sie für bestimmte Benutzer ausführbar machen. Aber ich versage es.Wie Sie eine gespeicherte Prozedur für einen bestimmten Benutzer zugänglich machen
Wenn ich diese Zeile schreiben,
create proc GetCustomerDetailsCompanyWise
(@comp varchar(40))
as
begin
grant execute on GetCustomerDetailsCompanyWise to [sgp\deepak.b]
execute AS USER='sgp\deepak.b';
select *
from DD_Customer
where Company = @comp;
end
exec GetCustomerDetailsCompanyWise 'Google'
ich diesen Fehler
Msg 916, Level 14, State 1, Procedure
GetCustomerDetailsCompanyWise, Line 6
The server principal "sgp\deepak.b" is not able to access the
database "TEMP" under the current security context.
Könnten Sie bitte erklären, was ich falsch gemacht haben und wie kann ich es beheben?
Also, Sie möchten, dass dieser SP immer unter '[sgp \ deepak.b]' ausgeführt wird, egal wer den Start ausführt? – gofr1
@ gofr1, Ja, das ist was ich will. – Deepak