Débogage des procédures stockées

S’applique à : SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

SQL Server Analysis Services procédures stockées sont en fait des bibliothèques CLR ou COM (normalement des DLL) écrites en C# (ou tout autre langage CLR ou COM). Par conséquent, le débogage d'une procédure stockée n'est pas sans ressembler à celui des autres applications dans l'environnement de débogage de Visual Studio. Pour déboguer les procédures stockées, l'environnement de développement de Visual Studio met à votre disposition ses fonctions de débogage intégrées. Ces fonctions vous permettent d'arrêter l'exécution aux emplacements des procédures, d'inspecter des valeurs en mémoire et dans le Registre, de modifier des variables, d'observer les échanges de messages et de regarder de près comment votre code fonctionne.

Pour déboguer une procédure stockée

  1. Ouvrez le projet utilisé pour créer la DLL dans Visual Studio.

  2. Créez des points d'arrêt dans la méthode ou la fonction correspondant à la procédure à déboguer.

  3. Utilisez Visual Studio pour créer une version debug d'une DLL de procédure stockée.

  4. Déployez la DLL vers le serveur. Pour plus d’informations sur le déploiement de la DLL sur le serveur, consultez Création de procédures stockées.

  5. Vous avez besoin d'une application qui appelle la procédure stockée que vous voulez tester. Si vous n’en avez pas, vous pouvez utiliser le Éditeur de requête MDX dans SQL Server Management Studio pour créer une requête MDX qui appelle la procédure stockée que vous souhaitez tester.

  6. Dans Visual Studio, attachez-vous au processus SQL Server Analysis Services (Msmdsrv.exe).

    1. Dans le menu Déboguer , choisissez Attatch toProcess.

    2. Dans la boîte de dialogue Attatch toProcess , sélectionnez Afficher les processus de tous les utilisateurs.

    3. Dans la liste Processus disponibles , dans la colonne Processus , cliquez sur Msmdsrv.exe. Si plusieurs instance de SQL Server Analysis Services s’exécutent sur le serveur, vous devez identifier le processus par l’ID du instance que vous souhaitez utiliser.

    4. Dans la zone de texte Attacher à , vérifiez que le type de programme approprié est sélectionné. Pour une DLL CLR, cliquez sur Sélectionner, puis sur Déboguer ces types de code, sur Géré, puis sur OK. Pour une DLL COM, cliquez sur Sélectionner, puis sur Déboguer ces types de code, puis sur Natif, puis sur OK.

    5. Cliquez sur Attacher.

  7. Dans SQL Server Analysis Services, appelez le programme ou le script MDX qui appelle la procédure stockée. Le débogueur s'interrompt lorsqu'il atteint une ligne contenant un point d'arrêt. Vous pouvez évaluer des variables dans la fenêtre Espion, afficher des variables locales et exécuter le code en pas à pas.

Si le débogage d'une bibliothèque pose des problèmes, vérifiez que le fichier de base de données du programme (fichier PDB) correspondant a été copié vers l'emplacement du déploiement sur le serveur. Si ce fichier n'a pas été copié durant l'inscription ou le déploiement, vous devez le copier manuellement au même endroit que la DLL. Pour le code natif (DLL COM), le fichier PDB réside dans le sous-répertoire \debug. Pour le code managé (DLL CLR), il réside dans le sous-répertoire \WINDEBUG.

Voir aussi

Gestion des assemblys de modèles multidimensionnels
Définition de procédures stockées