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

Tableau dans Excel à partir d'une procédure stockée SQL Server avec champ de paramètre dans le classeur

Je l'ai fait fonctionner en suivant les étapes fournies dans le billet de blog lié suivant.

http://codebyjoshua.blogspot.com /2012/01/get-data-from-sql-server-stored.html

Étapes copiées ici en cas de rupture de lien à l'avenir.

Instruction Excel 2007 :

  1. Sélectionnez l'onglet Données sur le ruban d'Excel, puis dans le groupe Obtenir des données externes, choisissez le menu déroulant "À partir d'autres sources". Choisissez ensuite "À partir de Microsoft Query"

  2. Dans la boîte de dialogue "Choisir la source de données", sélectionnez votre serveur SQL, puis cliquez sur OK.

  3. Fermez la popup "Ajouter des tables" si nécessaire.

  4. Cliquez sur le bouton "SQL" ou choisissez Affichage > SQL pour ouvrir l'éditeur contextuel SQL.

  5. Saisissez la syntaxe suivante :{CALL myDatabaseName.dbo.myStoredProc (?, ?, ?)}

    Par exemple :{CALL northwind.dbo.spGetMaxCost (?, ?, ?)}

    Assurez-vous d'inclure les accolades ondulées autour de l'instruction d'appel. Chaque point d'interrogation (?) indique un paramètre. Si votre procédure stockée demande plus ou moins de paramètres, ajoutez ou soustrayez des points d'interrogation selon vos besoins.

  6. Appuyez sur le bouton OK. Une boîte de question devrait apparaître indiquant "La requête SQL ne peut pas être représentée graphiquement, continuez quand même ?", appuyez simplement sur le bouton OK.

  7. On vous demandera maintenant des exemples de paramètres pour chaque point d'interrogation que vous avez inclus ci-dessus. Entrez des valeurs de paramètre valides pour les données que vous interrogez.

  8. Une fois que vous avez entré le dernier paramètre, vous devriez obtenir des résultats dans Microsoft Query. S'ils semblent bons, fermez Microsoft Query.

  9. Vous devriez maintenant voir une fenêtre contextuelle "Importer des données". Cliquez sur le bouton Propriétés, ce qui fera apparaître la fenêtre contextuelle "Propriétés de la connexion".

  10. Sélectionnez l'onglet Définition, puis sélectionnez le bouton Paramètres. Vous devriez maintenant voir une fenêtre contextuelle "Paramètres", où vous pouvez connecter le paramètre à une cellule spécifique.

  11. Sélectionnez Obtenir la valeur de la cellule suivante, puis connectez-vous à une cellule appropriée dans Excel qui contiendra votre paramètre, en cliquant sur la petite case avec la flèche.

  12. Si vous souhaitez que les données soient actualisées à chaque fois que vous modifiez la cellule contenant le paramètre, cochez la case "Actualiser automatiquement lorsque la valeur de la cellule change"

  13. Continuer comme ci-dessus pour les autres paramètres. Lorsque vous avez terminé, cliquez sur OK pour revenir à la fenêtre contextuelle des propriétés de connexion. Cliquez sur OK pour revenir à la fenêtre contextuelle Importer des données, puis cliquez à nouveau sur OK.

  14. Vous devriez maintenant avoir des données provenant directement de votre procédure stockée.