[dba-SQLServer] Execute permission denied

Jim Lawrence accessd at shaw.ca
Sat Jun 18 18:38:44 CDT 2011


Hi John:

It can not be too different from the standard method:

/*Stored Procedure
CREATE PROC dbo.RECompanyConfigurationGET
  @intCompanyCode int
AS
  SELECT DISTINCT CompanyConfig.CompanyCode, CasinoCompany.CompanyName,
	CompanyConfig.InitialLetterLocation,
CompanyConfig.FollowupLetterLocation, CompanyConfig.ExpiryLetterLocation
	FROM CasinoCompany INNER JOIN CompanyConfig ON
CasinoCompany.CompanyCode = CompanyConfig.CompanyCode
	WHERE CompanyConfig.CompanyCode = @intCompanyCode
	ORDER BY CasinoCompany.CompanyName;
GO

------------------------------------------------

'Calling code from Access
Dim rs1 As ADODB.Recordset
Dim objCmd As ADODB.Command
    
Set rs1 = New ADODB.Recordset
Set objCmd = New ADODB.Command

With objCmd
  .ActiveConnection = gstrConnection 'Connection string
  .CommandText = "RECompanyConfigurationGET"
  .CommandType = adCmdStoredProc
  .Parameters.Append .CreateParameter("@intCompanyCode", adInteger,
adParamInput, , typCmpConf.CompanyCode)
End With
    
With rs1
  .CursorLocation = adUseClient
  .Open objCmd, , adOpenStatic, adLockReadOnly
  If .BOF = False Or .EOF = False Then
    .MoveLast
    ...
  End if
End With

Jim


-----Original Message-----
From: dba-sqlserver-bounces at databaseadvisors.com
[mailto:dba-sqlserver-bounces at databaseadvisors.com] On Behalf Of jwcolby
Sent: Friday, June 17, 2011 7:51 PM
To: Access Developers discussion and problem solving; Sqlserver-Dba
Subject: [dba-SQLServer] Execute permission denied

I am trying to figure out how to use stored procedures to return recordsets
to Access.  I created a 
stored procedure that accepts a parameter, the stored procedure pulls a
recordset and if used like so:

exec usp_MySP 1

returns a recordset to the query window in SQL Server.

So, now how to get it to work in Access.  I thought I was going to create a
pass through query 
dynamically, save it and then "open" the query to get the recordset.

The query is a passthrough query

usp_InmatesForVolunteers 1

The ODBC connect string is:

ODBC;DRIVER=SQL
Server;UID=MyUser;PWD=MyPassword;SERVER=5.58.170.179;DATABASE=InmateCheckout
;

All of this (except for the database part) comes directly out of a DSN file
which works to link 
tables and views into Access.  Tested and working for that purpose.

So the passthrough query fails.  Error:

[Microsoft][ODBC Sql Server Driver][SQL Server]The execute permission was
denied on the object 
'usp_InmatesForVolunteers', database 'InmateCheckout', schema 'dbo'. (#229)

Interestingly if I remove the database part of the connection string it
returns exactly the same 
error message, even mentioning that database.  Thus the user itself being
mapped to that database 
seems to be working as well.

As I said, this all works for linking SQL Server tables and views, just not
executing the sp.

Any ideas?

-- 
John W. Colby
www.ColbyConsulting.com
_______________________________________________
dba-SQLServer mailing list
dba-SQLServer at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/dba-sqlserver
http://www.databaseadvisors.com




More information about the dba-SQLServer mailing list