Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

msxml3.dll dans le contexte sp_OAMethod 'envoyer'

Je suis tombé sur ce problème désagréable pendant tout un week-end. Personnellement, j'ai trouvé horrible la solution de contournement "remplacer DLL", alors j'ai fait de mon mieux pour trouver une solution plus sûre... Heureusement, j'en ai trouvé deux.

Solution 1

Appliquez le MS HotFix suivant, qui résout définitivement le problème :

(lisez le message pour plus d'informations et pour demander le correctif par e-mail via les canaux sécurisés MS)

Solution 2

Si vous ne pouvez pas appliquer le HotFix, vous pouvez toujours faire le travail en utilisant une syntaxe légèrement différente lors de l'émission de la commande SEND. Au lieu de cela :

Exec @ErrCode=sp_OAMethod @Object, 'send',null,'your-data';

faites ceci :

Exec @ErrCode=sp_OAMethod @Object, 'send("your-data")';

Cela fonctionne pour tout type de données de requête HTTP :JSON , XML et même application/x-www-form-urlencoded pour une requête POST standard. L'inconvénient est qu'une telle syntaxe est assez laide... et vous devez modifier toutes vos procédures stockées de cette façon.

Pour plus d'informations sur le problème, vous pouvez également lire ce message sur mon blog.