Support formation Rapports Power BI

Se connecter à une base de données

En bref

  • Objectifs : vous connecter à une base SQL Server, Azure SQL ou à un point de terminaison SQL Fabric ; choisir entre Import et DirectQuery ; utiliser les options avancées du connecteur ; choisir le mode d'authentification adapté.
  • Prérequis : page Choisir un mode de stockage ; nom du serveur, de la base et identifiants fournis par le formateur.
  • Niveau : découverte.
[Bloc à reprendre de l'ancienne page dans l'éditeur : pptxDeck | Connexion 3 - Se connecter à des bases de données]

Pourquoi ?

Les données de gestion (ventes, commandes, stocks) sont le plus souvent stockées dans une base relationnelle. Se connecter directement à la base plutôt qu'à des exports Excel garantit des données complètes et à jour, permet de déléguer une partie du travail au serveur (query folding) et ouvre l'accès au mode DirectQuery pour les gros volumes ou les besoins de fraîcheur.

Notions clés

Les champs du connecteur SQL Server

image.png
ChampRôle
ServeurNom ou adresse du serveur : NomServeurInstance ou localhost pour un serveur local, adresse complète pour Azure SQL, chaîne de connexion SQL de l'élément pour un lakehouse ou un entrepôt Fabric
Base de données (facultatif)Base à ouvrir directement ; si le champ est vide, le Navigateur liste les bases du serveur. Dans Fabric, c'est en général le nom du lakehouse ou de l'entrepôt
Mode de connectivité des donnéesImporter ou DirectQuery (Power BI Desktop uniquement)

Les options avancées

OptionUtilité
Délai d'expiration de la commande en minutesLaisse la connexion ouverte plus longtemps que les 10 minutes par défaut, pour des requêtes longues
Instruction SQLExécute une requête SQL native ; le Navigateur n'est alors pas affiché
Inclure des colonnes de relationAjoute les colonnes liées aux autres tables par des clés étrangères
Naviguer à l'aide de la hiérarchie complèteAffiche toute la hiérarchie des tables de la base ; sinon, seules les tables contenant des données apparaissent
Activer la prise en charge du basculement de SQL ServerBascule vers un autre nœud d'un groupe de disponibilité Always On si le nœud principal est indisponible ; à n'activer que sur un serveur configuré pour cela

Les modes d'authentification

  • Windows : utilise le compte Windows de la personne connectée ; c'est la méthode habituelle en entreprise quand le poste et le serveur sont dans le même domaine.
  • Base de données : nom d'utilisateur et mot de passe définis dans SQL Server ; utile quand l'authentification Windows n'est pas possible.
  • Compte Microsoft (compte d'organisation Entra ID) : pour Azure SQL et Fabric, si le serveur le prend en charge.

Les identifiants sont enregistrés une fois par source dans Power BI Desktop ; vous pouvez les modifier par Fichier > Options et paramètres > Paramètres de la source de données.

Import ou DirectQuery

En Import, Power BI copie les données dans le modèle : les visuels sont rapides, mais il faut actualiser pour voir les changements. En DirectQuery, Power BI envoie des requêtes natives à la base à chaque affichage d'un visuel : les données sont à jour, mais les performances dépendent des index et de la puissance du serveur, et certaines transformations Power Query ne sont pas disponibles. Une base SQL Server installée sur le réseau de l'entreprise exige une passerelle dans les deux modes ; une base Azure SQL accessible depuis le cloud n'en demande pas.

Pas à pas

1. Accueil > Obtenir des données > SQL Server.

2. Saisissez le Serveur et la Base de données fournis par le formateur, choisissez Importer, puis cliquez sur OK.

3. Lors de la première connexion, choisissez l'onglet Base de données, saisissez l'identifiant et le mot de passe fournis par le formateur, puis cliquez sur Se connecter.

[Capture : boîte de dialogue des informations d'identification SQL Server, onglet Base de données sélectionné, champs vides]

4. Dans le Navigateur, cochez les tables utiles (par exemple FactInternetSales, DimProduct et DimCustomer), puis cliquez sur Transformer les données.

[Capture : Navigateur de la base AdventureWorksDW2022 avec trois tables cochées et l'aperçu de FactInternetSales]

Exemple

Le serveur de formation est un serveur Azure SQL qui héberge les bases d'exemple Microsoft AdventureWorks2022 (transactionnelle) et AdventureWorksDW2022 (entrepôt de données). Le serveur, l'identifiant et le mot de passe vous sont fournis par le formateur ; ils ne figurent pas dans ce support.

Le code M généré par le connecteur ressemble à ceci :

let
    Source = Sql.Database("<serveur fourni par le formateur>", "AdventureWorksDW2022"),
    Ventes = Source{[Schema = "dbo", Item = "FactInternetSales"]}[Data]
in
    Ventes

Avec l'option Instruction SQL, vous pouvez limiter les colonnes dès la source :

SELECT OrderDateKey, ProductKey, CustomerKey, SalesAmount
FROM dbo.FactInternetSales

Pièges et bonnes pratiques

  • Une instruction SQL native peut empêcher Power Query de replier les étapes suivantes (voir Query folding dans la partie 2) : préférez sélectionner les tables dans le Navigateur et filtrer dans Power Query, ou créez une vue côté serveur.
  • Pour qu'une source de passerelle soit reconnue, les noms de serveur et de base saisis dans Power BI Desktop doivent être identiques à ceux déclarés dans la passerelle.
  • En DirectQuery, faites optimiser la base (index, vues) avant de publier.
  • Ne publiez jamais d'identifiants dans un rapport, un support ou un fichier partagé ; demandez un compte en lecture seule pour la formation.

À retenir

  • Le connecteur SQL Server sert aussi pour Azure SQL et pour les points de terminaison SQL de Fabric.
  • Import par défaut, DirectQuery si le volume ou la fraîcheur l'imposent.
  • Les options avancées se règlent dans la boîte de dialogue de connexion, avant le Navigateur.
  • Une base locale exige une passerelle, une base Azure accessible depuis le cloud non.

Pour aller plus loin

  • Connecteur SQL Server (Power Query). Source
  • Connectivité à l'entrepôt de données dans Microsoft Fabric. Source
  • Actualisation des données dans Power BI : sources locales et cloud. Source

Exercice

[À compléter par le formateur : exercice de connexion à la base AdventureWorksDW2022, si souhaité.]