(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisbon

How to Load a CSV into a Lakehouse in Microsoft Fabric

João Barros 05 de July de 2026 4 min read

A CSV file is one of the most common ways to receive data, but to analyze it in Power BI or query it with SQL you first need to turn it into a table. In Microsoft Fabric, a Lakehouse lets you load a CSV file and convert it into a Delta table in just a few clicks, without writing a single line of code. It is an everyday task for anyone working with data and the entry point to building reliable reports. This guide walks through the whole process, from uploading the file to querying it in SQL.

Prerequisites

  • An account with access to Microsoft Fabric and an active capacity (Fabric or Trial).
  • A workspace where you have edit permissions.
  • A .csv file with a header row (for example, vendas.csv).

Step 1: Create a Lakehouse

A Lakehouse is the Fabric item that keeps raw files and query-ready tables in the same place. In the Fabric portal, open your workspace and click + New item. From the list, choose Lakehouse, give it a name (for example vendas_lh) and confirm. Within seconds the explorer opens, split into two areas: Tables, for Delta tables, and Files, for raw files.

If you already have a Lakehouse, open it from the workspace and skip to Step 2.

Step 2: Upload the CSV to the Files area

In the Files area, hover over the folder, click the ellipsis (...) and choose Upload → Upload files. Select your vendas.csv and confirm. The file is stored in OneLake, Fabric's unified storage, exactly as you uploaded it — note that it is not a table yet, just a file.

A good practice is to create a raw folder first and upload your source files there. That keeps the staging area tidy and separate from your final tables.

Step 3: Convert the CSV into a Delta table

This is the key step. Right-click the vendas.csv file (or use the ellipsis) and choose Load to Tables → New table. Confirm the table name — Fabric suggests a valid name, with no spaces or special characters — and click Load.

Behind the scenes, Fabric reads the CSV, infers each column's type from the content and writes a Delta table optimized with V-Order into the Tables area. Unlike a CSV, a Delta table supports transactions, versioning and fast reads, which is why it is the recommended format in the Lakehouse. The table becomes available for SQL queries and Power BI right away.

Note: this UI flow does not let you manually define column names and types. When you need that control, use a notebook, as shown next.

Step 4 (optional): Load with a notebook

If you want to control the schema or apply transformations before saving, a PySpark notebook gives you that freedom. Create a notebook, attach it to the Lakehouse and run:

df = (spark.read
    .option("header", "true")
    .option("inferSchema", "true")
    .csv("Files/raw/vendas.csv"))

df.write.format("delta").mode("overwrite").saveAsTable("vendas")

The Files/raw/vendas.csv path is relative to the Lakehouse attached to the notebook. The result matches Step 3: a Delta table named vendas, but now with the schema under your control.

Verify the result

The vendas table should appear in the Lakehouse Tables area. Click it to preview the first rows. To confirm it is really queryable, switch to the SQL analytics endpoint (top-right corner of the Lakehouse) and run:

SELECT TOP 10 * FROM vendas;

If you see your rows with the correct headers, the CSV is officially loaded as a Delta table and ready to use in reports.

Conclusion

In just a few minutes and without managing any infrastructure, you turned a simple CSV file into a queryable Delta table in Microsoft Fabric. The natural next step is to build a semantic model and a Power BI report on top of this table, or to automate loading with a pipeline for the files that arrive every day. Which dataset will you load into your Lakehouse first?