PostgreSQL
Résumé
Élément | Description |
---|---|
État de mise en production | Disponibilité générale |
Produits | Excel Power BI (modèles sémantiques) Power BI (Flux de données) Fabric (Dataflow Gen2) PowerApps (Flux de données) Dynamics 365 Customer Insights Services d'analyse (Analysis Services) |
Types d’authentification pris en charge | Base de données (nom d’utilisateur/mot de passe) |
Documentation de référence sur les fonctions | Base de données PostgreSQL |
Note
Certaines fonctionnalités peuvent être présentes dans un produit, mais pas d’autres en raison de planifications de déploiement et de fonctionnalités spécifiques à l’hôte.
Conditions préalables
Depuis décembre 2019, Power BI Desktop est fourni avec NpgSQL et aucune installation supplémentaire n’est requise. À compter de la version d’octobre 2024, NpgSQL 4.0.17 est la version incluse. L’installation du GAC remplace la version fournie avec Power BI Desktop, qui est la valeur par défaut. L’actualisation est prise en charge à la fois via le cloud dans le service Power BI et localement via la passerelle de données locale. Pour actualiser les données à partir du service Power BI sans passerelle de données locale, PostgreSQL doit être hébergé de manière à autoriser une connexion directe à partir des services Power BI sur Azure. Ceci est pris en charge en mode natif pour PostgreSQL hébergé dans Microsoft Azure. Pour d’autres environnements d’hébergement, consultez votre fournisseur d’hébergement sur la configuration de votre PostgreSQL pour l’accès direct à partir d’Internet. Si PostgreSQL est configuré afin qu’il ne soit pas directement accessible à partir d’Internet (recommandé pour la sécurité), vous devez utiliser une passerelle de données locale pour les actualisations. Dans le service Power BI, NpgSQL 4.0.17 est utilisé, tandis que l’actualisation locale utilise l’installation locale de NpgSQL, le cas échéant, et utilise sinon NpgSQL 4.0.17.
Pour les versions de Power BI Desktop publiées avant décembre 2019, vous devez installer le fournisseur NpgSQL sur votre ordinateur local. Pour installer le fournisseur NpgSQL, accédez à la page versions, recherchez la dernière version v4.0.x, puis téléchargez et exécutez le fichier .msi. L’architecture du fournisseur (32 bits ou 64 bits) doit correspondre à l’architecture du produit dans laquelle vous envisagez d’utiliser le connecteur. Lors de l’installation, veillez à sélectionner L’installation du GAC NpgSQL pour vous assurer que NpgSQL lui-même est ajouté à votre ordinateur.
Nous vous recommandons NpgSQL 4.0.17. NpgSQL 4.1 et versions ultérieures ne fonctionneront pas en raison d’incompatibilités de version .NET.
Pour Power Apps, vous devez installer le fournisseur NpgSQL sur votre ordinateur local. Pour installer le fournisseur NpgSQL, accédez à la page versions et téléchargez la version appropriée. Télécharger et exécuter le fichier d’installation (numéro de version NpgSQL-[numéro de version].msi). Assurez-vous de sélectionner l'installation du GAC NpgSQL et redémarrez votre ordinateur à la fin de l'installation pour que celle-ci prenne effet.
Fonctionnalités prises en charge
- Importer
- DirectQuery (modèles sémantiques Power BI)
- Options avancées
- Délai d’expiration de la commande en minutes
- Instruction SQL native
- Colonnes de relation
- Naviguer à l’aide de la hiérarchie complète
Se connecter à une base de données PostgreSQL à partir de Power Query Desktop
Une fois le fournisseur Npgsql correspondant installé, vous pouvez vous connecter à une base de données PostgreSQL. Pour établir la connexion, procédez comme suit :
Sélectionnez l’option base de données PostgreSQL dans la sélection du connecteur.
Dans la boîte de dialogue base de données PostgreSQL qui s’affiche, indiquez le nom du serveur et de la base de données.
Sélectionnez le mode de connectivité des données Import ou DirectQuery.
Si c’est la première fois que vous vous connectez à cette base de données, saisissez vos informations d’identification PostgreSQL dans les zones Nom d'utilisateur et Mot de passe du type d’authentification Base de données. Sélectionnez le niveau pour appliquer les paramètres d’authentification. Sélectionnez ensuite Se connecter.
Pour plus d’informations sur l’utilisation des méthodes d’authentification, accédez à Authentification avec une source de données.
Note
Si la connexion n’est pas chiffrée, vous serez invité à envoyer le message suivant.
Sélectionnez OK pour vous connecter à la base de données à l’aide d’une connexion non chiffrée, ou suivez les instructions de Activer les connexions chiffrées au moteur de base de données pour configurer des connexions chiffrées à la base de données PostgreSQL.
Dans Navigateur, sélectionnez les informations de base de données souhaitées, puis sélectionnez Charger pour charger les données ou Transformer les données pour continuer à transformer les données dans l’Éditeur Power Query.
Se connecter à une base de données PostgreSQL à partir de Power Query Online
Pour établir la connexion, procédez comme suit :
Sélectionnez l’option base de données PostgreSQL dans la sélection du connecteur.
Dans la boîte de dialogue base de données PostgreSQL qui s’affiche, indiquez le nom du serveur et de la base de données.
Sélectionnez le nom de la passerelle de données locale que vous souhaitez utiliser.
Sélectionnez le type d’authentification de base
et entrez vos informations d’identification PostgreSQL dans les zones nom d’utilisateur et mot de passe. Si votre connexion n’est pas chiffrée, désactivez Utiliser la connexion chiffrée.
Sélectionnez Next pour vous connecter à la base de données.
Dans navigateur, sélectionnez les données dont vous avez besoin, puis sélectionnez Transformer des données pour transformer les données dans l’éditeur Power Query.
Se connecter à l’aide d’options avancées
Power Query Desktop fournit un ensemble d’options avancées que vous pouvez ajouter à votre requête si nécessaire.
Le tableau suivant répertorie toutes les options avancées que vous pouvez définir dans Power Query Desktop.
Option avancée | Description |
---|---|
Délai d’expiration de la commande en minutes | Si votre connexion dure plus de 10 minutes (délai d’expiration par défaut), vous pouvez entrer une autre valeur en minutes pour que la connexion reste ouverte plus longtemps. Cette option est disponible uniquement dans Power Query Desktop. |
Instruction SQL | Pour plus d’informations, accédez à Importer des données à partir d’une base de données à l’aide de la requête de base de données native. |
Inclure des colonnes de relation | Si cette option est cochée, inclut des colonnes qui peuvent avoir des relations avec d’autres tables. Si cette zone est désactivée, vous ne verrez pas ces colonnes. |
Naviguer à l’aide de la hiérarchie complète | Si cette option est cochée, le navigateur affiche la hiérarchie complète des tables dans la base de données à laquelle vous vous connectez. S’il est effacé, le navigateur affiche uniquement les tables dont les colonnes et les lignes contiennent des données. |
Une fois que vous avez sélectionné les options avancées dont vous avez besoin, sélectionnez OK dans Power Query Desktop pour vous connecter à votre base de données PostgreSQL.
Query Folding natif
Par défaut, le pliage de requête natif est activé. Les opérations capables de se plier seront appliquées sur votre requête native en fonction de la logique d’importation normale ou de requête directe. Le repli de requête native n’est pas applicable avec des paramètres facultatifs présents dans Value.NativeQuery().
Dans les rares cas où le pliage ne fonctionne pas avec le pliage de requête natif activé, vous pouvez le désactiver. Pour désactiver le pliage des requêtes natives, définissez l’indicateur EnableFolding
sur false
pour Value.NativeQuery() dans l’éditeur avancé.
Exemple : Value.NativeQuery(target as any, query, null, [EnableFolding=false])
Dépannage
Votre requête native peut générer l’erreur suivante :
We cannot fold on top of this native query. Please modify the native query or remove the 'EnableFolding' option.
Une étape de résolution des problèmes de base consiste à vérifier si la requête dans Value.NativeQuery() lève la même erreur avec une clause limit 1
autour de celle-ci :
select * from (query) _ limit 1