2009-11-19 3 views
0

Je reçois l'erreur suivante lorsque vous essayez d'exécuter une procédure stockée qui appelle un ensemble de .NET déployé dans une base de données SQL 2005:erreur d'appel de procédure stockée qui exécute un ensemble de .net

Msg 50000, Level 16, State 1, Procedure usp_GetPrintFilePathandExecPrintJob, Line 63 
Error (10314) has occured while executing the usp_GetPrintFilePathandExecPrintJob method. Reason: An error occurred in the Microsoft .NET Framework while trying to load assembly id 65536. The server may be running out of resources, or the assembly may not be trusted with PERMISSION_SET = EXTERNAL_ACCESS or UNSAFE. Run the query again, or check documentation to see how to solve the assembly trust issues. For more information about this error: 
System.IO.FileLoadException: Could not load file or assembly 'quantumprintfile, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b50734a63ac65c10' or one of its dependencies. An error relating to security occurred. (Exception from HRESULT: 0x8013150A) 
System.IO.FileLoadException: 
    at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) 
    at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) 
    at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) 
    at System.Reflection.Assembly.Load(String assemblyString) 

The assembly was added using: 
CREATE ASSEMBLY [QuantumPrint] 
AUTHORIZATION [dbo] 
FROM ... 
WITH PERMISSION_SET = EXTERNAL_ACCESS 

Je ne peux pas comprendre pourquoi je reçois l'erreur ci-dessus.

Répondre

0

L'utilisateur du serveur SQL a-t-il l'autorisation d'exécuter le fichier?

+0

L'ensemble est à l'intérieur de la base de données, l'utilisateur fait appel de la procédure stockée requièrent des autorisations également sur l'ensemble? –

+0

TBH Je ne suis pas tombé sur un sproc appelant une assemblée, je disais juste la première chose qui me vint à l'esprit. Lorsque vous dites "dans la base de données", voulez-vous dire qu'il est livré avec SQL Server 2005? Si c'est le cas, je pense que les autorisations ne sont pas pertinentes dans ce cas. –

1

La solution a finalement été trouvée via un article MSDN à enroulement long. Le login que nous utilisions n'avait pas 'ASSEMBLAGE D'ACCÈS EXTERNE'. La question a été corrigé en exécutant les éléments suivants:

USE master octroi de dons ACCÈS À L'ASSEMBLÉE

Questions connexes