Select the product you need help with
Message d'erreur lorsque vous exécutez une routine CLR ou que vous utilisez un assembly dans SQL Server: « Assembly dans le magasin hôte a une même signature que l'assembly dans le GAC. (Exception de HRESULT : 0x80131050) "Numéro d'article: 949080 - Voir les produits auxquels s'applique cet article SommaireSymptômesExaminons les scénarios suivants. Scénario 1Vous créez une routine courante au language runtime (CLR) qui fait référence à un assembly Microsoft.NET Framework. L'assembly.NET Framework n'est pas documentée dans Article de la Base de connaissances 922672. Puis, vous installez le 3.5 de.NET Framework ou un correctif basée sur.NET Framework 2.0.Scénario 2Création d'un assembly, et puis vous enregistrez l'assembly dans une base de données Microsoft SQL Server. Ensuite, vous installez une version différente de l'assembly dans le Global Assembly Cache (GAC).Lorsque vous exécutez la routine CLR ou utilisez l'assembly à partir de ces deux scénarios dans SQL Server, vous recevez un message d'erreur semblable au suivant : Serveur: Msg 6522, niveau 16, état 2, ligne 1 Un.NET Framework une erreur s'est produite pendant l'exécution de la routine définis par l'utilisateur ou d'un agrégat « getsid » : System.IO.FileLoadException : Impossible de charger fichier ou assembly ' System.DirectoryServices, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a' ou l'un de ses dépendances. Assembly dans l'hôte banque d'informations a une même signature que l'assembly dans le GAC. (Exception de HRESULT : 0x80131050) System.IO.FileLoadException : CauseLorsque le CLR charge un assembly, le CLR vérifie que le même assembly se trouve dans le GAC. Si le même assembly se trouve dans le GAC, le CLR vérifie
qui
mettre en correspondance les ID de Version du Module (MVIDs) de ces assemblys. Si les MVIDs de ceux-ci
les assemblys ne correspondent pas, vous recevez le message d'erreur du message que le
Mentionne la section « Symptômes ». Lorsqu'un assembly est recompilé, le MVID de la modifications de l'assembly. Par conséquent, si vous mettez à jour le.NET Framework, les assemblys.NET Framework ont différents MVIDs dans la mesure où ces assemblys sont recompilés. En outre, If vous mettez à jour votre propre assembly, l'assembly est recompilé. Par conséquent, l'assembly possède également un autre MVID. ContournementSolution de contournement 1Pour contourner le scénario 1 dans la section « Symptômes », vous devez mettre à jour manuellement les assemblys.NET Framework dans SQL Server. Pour ce faire, utilisez l'instruction ALTER ASSEMBLY pour point vers le nouveau version de l'assembly.NET Framework dans le dossier suivant :%Windir%\Microsoft.NET\Framework\Version RemarqueVersion représente la
version de la.NET Framework que vous avez
installé ou mis à jour.Solution de contournement 2Pour contourner de scénario 2 pouces les section « Symptômes » de section, utilisez l'instruction ALTER ASSEMBLY pour mettre à jour de l'assembly dans la base de données.Si le problème persiste Après cela, vous devez supprimer l'assembly de la base de données, puis inscrire le nouvelle version de l'assembly dans la base de données. StatutMicrosoft
a confirmé qu'il s'agit d'un problème dans les produits Microsoft répertoriés
dans la section « S'applique à ». Plus d'informationsNous vous déconseillons d'utiliser des assemblys.NET Framework qui ne sont pas documentés dans l'article 922672 de la Base de connaissances. L'article 922672 de la Base de connaissances répertorie les assemblys qui sont testés dans l'environnement hébergé SQL Server CLR. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft : 922672
(http://support.microsoft.com/kb/922672/
)
Politique de support pour les assemblys.NET Framework non testés dans l'environnement hébergé SQL Server CLR Description de routines CLRRoutines CLR inclure les objets suivants sont implémentés à l'aide Intégration de SQL Server avec le CLR de.NET Framework :
Assemblys pour mettre à jour une fois que vous installez.NET Framework 3.5Après avoir installé le 3.5 de.NET Framework, vous devez utiliser le ALTER ASSEMBLY instruction pour mettre à jour les assemblys suivants :
%Windir%\Microsoft.NET\Framework\v2.0.50727 Comment faire pour conserver les données à partir de types de données définis par l'utilisateur une fois que vous touchez un assemblySi vous déposez un assembly qui utilise un type de données défini par l'utilisateur à partir de SQL Server, vous pouvez utiliser une des méthodes suivantes pour conserver les données.Supposons que le texte suivant est le scénario :
Méthode 1: Utilisez l'utilitaire bcp.exe
Méthode 2: Utiliser l'instruction INSERT... Instruction SELECTSupposons que le type de données MyDateTime occupe 9 octets de stockage.
RéférencesPour plus d'informations sur la version d'assembly, visitez le
site Web de Microsoft Developer Network (MSDN) suivant : .aspx http://msdn2.Microsoft.com/en-us/library/51ket42z (VS.80) Pour
plus d'informations sur la façon de mettre à jour un assembly, consultez le site Web MSDN suivant
site :
(http://msdn2.microsoft.com/en-us/library/51ket42z(VS.80).aspx)
http://msdn2.Microsoft.com/en-us/library/ms186711.aspx Pour
plus d'informations sur le déplacement d'un assembly, visitez le site Web MSDN suivant
site :
(http://msdn2.microsoft.com/en-us/library/ms186711.aspx)
http://msdn2.Microsoft.com/en-us/library/ms177514.aspx Pour
plus d'informations sur la façon d'inscrire un assembly dans une base de données SQL Server 2005,
visitez le site Web MSDN suivant :
(http://msdn2.microsoft.com/en-us/library/ms177514.aspx)
http://msdn2.Microsoft.com/en-us/library/ms189524.aspx Pour
plus d'informations sur l'utilitaire Bcp.exe, visitez le site Web MSDN suivant :
(http://msdn2.microsoft.com/en-us/library/ms189524.aspx)
http://msdn2.Microsoft.com/en-us/library/ms162802.aspx
(http://msdn2.microsoft.com/en-us/library/ms162802.aspx)
PropriétésNuméro d'article: 949080 - Dernière mise à jour: lundi 7 janvier 2013 - Version: 1.0 Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
Traduction automatique IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique. La version anglaise de cet article est la suivante: 949080
(http://support.microsoft.com/kb/949080/en-us/
)
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT. | Traductions disponibles
|




Retour au début








