Extension

beta

Power BI

SQLite extension

Explore and query Power BI service dataset tables

Free Only during beta

  • Version 0.1.0
  • SQLite 3.45.1 or newer
  • Operating system Linux & Mac (ARM)

This SQLite extension allows you to access tables from a Power BI service dataset as SQLite database tables. It automatically applies column types and adjusts names to ensure compatibility with SQL queries.

Key points

  • Calls Microsoft Graph directly from your local machine
  • Fast in-memory cache for the duration of the connection
  • Lists tables from your remote Power BI dataset
  • Uses dataset column types for dates, booleans and numbers
  • One-time download, no subscription needed
  • Lifetime updates

Example

select name, clicks from pbi_table_1 where clicks > 10; ┌──────────┬────────┐ │ name │ clicks │ ├──────────┼────────┤ │ Source A │ 17 │ └──────────┴────────┘

Configuration

Every new SQLite connection should call function pbi_config with authentication details. This information is not saved, and kept in-memory for the duration of the connection.

select pbi_config('token: ..., dataset: ...');

  • token Access token to Microsoft Graph
  • dataset Dataset ID or case-insensitive name
  • prefix Prefix for table names, defaults to pbi_

FAQ

For any questions, support, or feedback regarding this extension, please let us know.

Why use SQLite extensions?

SQLite extensions can make your development faster and more efficient. They are helpful for both developers and users who are comfortable with SQL. Extensions provide privacy, control, and locality to your data and credentials. Read more

Why should I try this beta extension?

This extension is currently available for free to anyone who wants to try the Power BI extension. If you send your feedback to support, you will receive the personal version for free when it is released.

How do you query the Power BI dataset?

After authentication, the extension uses Microsoft Graph and the DAX language to query the Power BI dataset.

It retrieves table names, columns, and their data types from the INFO.VIEW functions, and renames them to snake_case for compatibility with SQL queries.

When accessing a table, the extension converts columns you provide into DAX filters, which helps query large datasets efficiently. Once the data is loaded, it remains in memory as long as the connection stays open.

How do I get a token for Microsoft Graph?

You will need to setup you own oAuth client for Microsoft Graph with the and acquire a token with the appropriate scopes.

Please refer to Microsoft documentation for detailed instructions.

What Microsoft Graph scopes are needed?

We expect tokens to have the minimal scopes to allow reading and executing DAX queries against a Power BI dataset.

Currently, this requires one of the two scopes listed below, as described in the official documentation.

  • Dataset.Read.All
  • Dataset.ReadWrite.All
How do I receive updates?

We will email you when an update to the same extension version has been released.