Type de connexion SQL Server (SSRS)

Pour inclure des données d'une base de données SQL Server dans votre rapport, vous devez avoir un dataset basé sur une source de données de rapport de type Microsoft SQL Server. Ce type de source de données intégré est basé sur l'extension de données Microsoft SQL Server. Ce type de source de données vous permet de vous connecter et de récupérer des données à partir de la version actuelle et des versions antérieures des bases de données SQL Server.

Cette extension de données prend en charge des paramètres à valeurs multiples, agrégats de serveur et informations d'identification gérés séparément de la chaîne de connexion.

Utilisez les informations de cette rubrique pour générer une source de données. Pour obtenir des instructions détaillées, consultez Procédure : ajouter et vérifier une connexion de données ou une source de données (Générateur de rapports version 3.0 et SSRS).

Dans cet article

Chaîne de connexion

Informations d'identification

Requêtes

Paramètres

Notes

Rubriques de procédures

Sections connexes

Chaîne de connexion

Lorsque vous vous connectez à une base de données SQL Server, vous vous connectez à l'objet de base de données d'une instance de SQL Server sur un serveur. La base de données peut comporter plusieurs schémas qui ont plusieurs tables, vues et procédures stockées. Vous spécifiez l'objet de base de données à utiliser dans le concepteur de requêtes. Si vous ne spécifiez pas de base de données dans la chaîne de connexion, vous vous connectez à la base de données par défaut que l'administrateur de base de données vous a affectée.

Contactez l'administrateur de votre base de données pour connaître les informations de connexion et d'identification à utiliser pour se connecter à la source de données. L'exemple de chaîne de connexion suivant spécifie un exemple de base de données sur le client local :

Data Source=<server>;Initial Catalog=AdventureWorks

Pour plus d'informations sur les exemples de chaînes de connexion, consultez Connexions de données, sources de données et chaînes de connexion dans le Générateur de rapports version 3.0.

Informations d'identification

Les informations d'identification sont obligatoires pour exécuter des requêtes, afficher l'aperçu du rapport localement et afficher l'aperçu du rapport à partir du serveur de rapports.

Après avoir publié votre rapport, vous pouvez devoir modifier les informations d'identification pour la source de données afin que les autorisations soient valides pour récupérer les données lorsque le rapport s'exécute sur le serveur de rapports.

Sur un client de création de rapports, les options suivantes sont disponibles pour spécifier des informations d'identification :

  • Utilisateur Windows actuel (également appelé sécurité intégrée).

  • Utiliser un nom d'utilisateur et un mot de passe enregistrés.

  • Inviter l'utilisateur à fournir des informations d'identification. Cette option prend uniquement en charge la sécurité intégrée de Windows.

  • Aucune information d'identification n'est requise. Pour utiliser cette option, vous devez avoir configuré le compte d'exécution sans assistance sur le serveur de rapports. Pour plus d'informations, consultez Configuration du compte d'exécution sans assistance dans la documentation de Reporting Services sur msdn.microsoft.com.

Pour plus d'informations, consultez Connexions de données, sources de données et chaînes de connexion (SSRS) ou Spécification des informations d'identification dans le Générateur de rapports version 3.0.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Requêtes

Une requête spécifie les données à récupérer pour un dataset de rapport. Les colonnes dans le jeu de résultats d'une requête remplissent la collection de champs pour un dataset. Un rapport traite uniquement le premier jeu de résultats récupéré par une requête.

Par défaut, si vous créez une requête ou si vous ouvrez une requête existante qui peut être représentée dans le concepteur de requêtes graphique, le concepteur de requêtes relationnelles est disponible. Vous pouvez spécifier une requête de plusieurs façons :

  • Générer une requête de manière interactive. Utilisez le concepteur de requêtes relationnelles, qui affiche selon un mode hiérarchique les tables, vues, procédures stockées et autres éléments de base de données, organisés par schéma de base de données. Sélectionnez des colonnes à partir des tables ou des vues, ou spécifiez des procédures stockées ou des fonctions table. Limitez le nombre de lignes de données à récupérer en spécifiant des critères de filtre. Personnalisez le filtre lorsque le rapport s'exécute en définissant l'option de paramètre.

  • Taper ou coller une requête. Utilisez le concepteur de requêtes textuel pour entrer directement du texte Transact-SQL, coller du texte de requête depuis une autre source, entrer des requêtes complexes impossibles à créer à l'aide du concepteur de requêtes relationnelles, ou pour entrer des expressions basées sur des requêtes.

  • Importer une requête existante à partir d'un fichier ou rapport. Utilisez le bouton Importer une requête à partir de l'un des concepteurs de requêtes afin de naviguer jusqu'à un fichier .sql ou .rdl, et d'importer une requête.

Pour plus d'informations, consultez Interface utilisateur du Concepteur de requêtes relationnelles (Générateur de rapports version 3.0) et Interface utilisateur du Concepteur de requêtes textuel (Générateur de rapports version 3.0).

Les modes de requête suivants sont pris en charge :

  • Texte   Tapez des commandes Transact-SQL.

  • Procédure stockée   Faites votre choix parmi une liste de procédures stockées.

Utilisation du type de requête Texte

Dans le concepteur de requêtes textuel, vous pouvez taper des commandes Transact-SQL pour définir les données d'un dataset. Par exemple, la requête Transact-SQL suivante sélectionne les noms de tous les employés qui occupent la fonction d'assistants marketing :

SELECT
  HumanResources.Employee.BusinessEntityID
  ,HumanResources.Employee.JobTitle
  ,Person.Person.FirstName
  ,Person.Person.LastName
FROM
  Person.Person
  INNER JOIN HumanResources.Employee
    ON Person.Person.BusinessEntityID = HumanResources.Employee.BusinessEntityID
WHERE HumanResources.Employee.JobTitle = 'Marketing Assistant' 

Cliquez sur le bouton Exécuter (!) de la barre d'outils pour exécuter la requête et afficher un jeu de résultats.

Pour paramétrer cette requête, ajoutez un paramètre de requête. Par exemple, modifiez la clause WHERE comme suit :

WHERE HumanResources.Employee.JobTitle = (@JobTitle)

Lorsque vous exécutez la requête, les paramètres de rapport qui correspondent aux paramètres de requête sont créés automatiquement. Pour plus d'informations, consultez Paramètres de requête plus loin dans cette rubrique.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Utilisation du type de requête StoredProcedure

Vous pouvez spécifier une procédure stockée pour une requête de dataset en procédant de l'une des manières suivantes :

  • Dans la boîte de dialogue Propriétés du dataset, définissez l'option Procédure stockée. Effectuez un choix dans la zone de liste déroulante de procédures stockées et de fonctions table.

  • Dans le Concepteur de requêtes relationnelles, dans le volet Base de données, sélectionnez une procédure stockée ou une fonction table.

  • Dans le Concepteur de requêtes textuel, sélectionnez StoredProcedure dans la barre d'outils.

Après avoir sélectionné une procédure stockée ou une fonction table, vous pouvez exécuter la requête. Vous serez invité à fournir les valeurs des paramètres d'entrée. Lorsque vous exécutez la requête, les paramètres de rapport qui correspondent aux paramètres d'entrée sont créés automatiquement. Pour plus d'informations, consultez Paramètres de requête plus loin dans cette rubrique.

Seul le premier jeu de résultats extrait pour une procédure stockée est pris en charge. Si une procédure stockée retourne plusieurs jeux de résultats, seul le premier est utilisé.

Si une procédure stockée possède un paramètre doté d'une valeur par défaut, vous pouvez accéder à cette dernière en utilisant le mot clé DEFAULT comme valeur pour le paramètre. Si le paramètre de requête est lié à un paramètre de rapport, l'utilisateur peut taper ou sélectionner le mot DEFAULT dans la zone d'entrée pour le paramètre de rapport.

Pour plus d'informations, consultez « Procédures stockées (Moteur de base de données) » dans la documentation en ligne de SQL Server sur msdn.microsoft.com.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Paramètres

Lorsque le texte de requête contient des variables de requête ou des procédures stockées dotées de paramètres d'entrée, les paramètres de requête correspondants pour le dataset et les paramètres de rapport pour le rapport sont automatiquement générés. Le texte de requête ne doit pas inclure l'instruction DECLARE pour chaque variable de requête.

Par exemple, la requête SQL suivante crée un paramètre de rapport nommé EmpID :

SELECT FirstName, LastName FROM HumanResources.Employee E INNER JOIN
       Person.Contact C ON  E.ContactID=C.ContactID 
WHERE EmployeeID = (@EmpID)

Les paramètres de rapport sont créés avec des valeurs de propriétés par défaut que vous devrez peut-être modifier. Par exemple :

  • Par défaut, chaque paramètre de rapport a le type de données Texte. Si les données sous-jacentes ont un autre type de données, vous devez modifier le type de données du paramètre.

  • Si vous sélectionnez l'option pour des paramètres à valeurs multiples, vous devez modifier manuellement la requête pour tester si les valeurs font partie d'un jeu en utilisant l'opérateur IN, par exemple WHERE EmployeeID IN (@EmpID).

Pour plus d'informations, consultez Paramètres (Générateur de rapports version 3.0 et SSRS).

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Notes

Vous pouvez également récupérer des données à partir d'une base de données SQL Server à l'aide d'un type de source de données OLE DB ou ODBC. Pour plus d'informations, consultez Type de connexion OLE DB (SSRS) ou Type de connexion ODBC (SSRS).

Informations sur les plateformes et les versions

Pour plus d'informations sur la prise en charge des plateformes et des versions, consultez Sources de données prises en charge par Reporting Services (SSRS) dans la documentation relative à Reporting Services au sein de la documentation en ligne de SQL Server.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Sections connexes

Ces sections de la documentation fournissent des informations de fond d'ordre conceptuel sur les données de rapport, ainsi que des informations sur les procédures de définition, de personnalisation et d'utilisation des parties d'un rapport qui sont liées aux données.

Icône de flèche utilisée avec le lien Retour au débutRetour au début