Skip to main content
Version: 0.4 (Latest)

Microsoft Fabric Reference

Reference material for Microsoft Fabric Publishing -- data type mappings, querying, troubleshooting, and CLI arguments.

Data Type Mapping

Source types map automatically to Fabric-compatible Delta Lake types. LakeXpress exports through Parquet, so the mapping is driven by the normalized source type name.

PostgreSQL to Fabric

PostgreSQL TypeFabric Type
SMALLINTSMALLINT
INTEGER, INT4INT
BIGINT, INT8BIGINT
NUMERIC(p,s)DECIMAL(p,s)
REAL, FLOAT4REAL
DOUBLE PRECISION, FLOAT8FLOAT
VARCHAR(n)VARCHAR(n)
TEXTVARCHAR(MAX)
CHAR(n)CHAR(n)
BOOLEANBIT
DATEDATE
TIMETIME
TIMESTAMPDATETIME2
TIMESTAMPTZDATETIMEOFFSET
BYTEAVARBINARY(MAX)
UUIDUNIQUEIDENTIFIER
JSON, JSONB, array []NVARCHAR(MAX)

SQL Server to Fabric

SQL Server TypeFabric Type
TINYINTTINYINT
SMALLINTSMALLINT
INTINT
BIGINTBIGINT
DECIMAL(p,s)DECIMAL(p,s)
MONEYDECIMAL(19,4)
SMALLMONEYDECIMAL(10,4)
FLOATFLOAT
REALREAL
BITBIT
VARCHAR(n)VARCHAR(n)
NVARCHAR(n)NVARCHAR(n)
CHAR(n)CHAR(n)
NCHAR(n)NCHAR(n)
TEXTVARCHAR(MAX)
NTEXTNVARCHAR(MAX)
DATEDATE
DATETIME, DATETIME2, SMALLDATETIMEDATETIME2
DATETIMEOFFSETDATETIMEOFFSET
VARBINARYVARBINARY(MAX)
UNIQUEIDENTIFIERUNIQUEIDENTIFIER

Oracle to Fabric

Oracle TypeFabric Type
NUMBERDECIMAL(38,18)
NUMBER(p,s)DECIMAL(p,s)
FLOATFLOAT
VARCHAR2(n)VARCHAR(n)
NVARCHAR2(n)NVARCHAR(n)
CHAR(n)CHAR(n)
CLOBVARCHAR(MAX)
NCLOBNVARCHAR(MAX)
DATEDATE
TIMESTAMPDATETIME2
RAW, BLOBVARBINARY(MAX)

Teradata to Fabric

Teradata TypeFabric Type
BYTEINT, VARBYTENVARCHAR(MAX)
SMALLINTSMALLINT
INTEGERINT
BIGINTBIGINT
DECIMAL(p,s), NUMERIC(p,s)DECIMAL(p,s)
NUMBERDECIMAL(38,18)
FLOAT, REALFLOAT
VARCHAR(n)VARCHAR(n)
CHAR(n)CHAR(n)
CLOBVARCHAR(MAX)
DATEDATE
TIMETIME
TIMESTAMPDATETIME2
BYTE, BLOBVARBINARY(MAX)

MySQL to Fabric

MySQL TypeFabric Type
TINYINTTINYINT
SMALLINTSMALLINT
MEDIUMINT, YEAR, TINYTEXT, MEDIUMTEXT, LONGTEXT, ENUM, SET, TINYBLOB, MEDIUMBLOB, LONGBLOB, JSONNVARCHAR(MAX)
INTINT
BIGINTBIGINT
DECIMAL(p,s)DECIMAL(p,s)
FLOAT, DOUBLEFLOAT
BITBIT
VARCHAR(n)VARCHAR(n)
CHAR(n)CHAR(n)
TEXTVARCHAR(MAX)
DATEDATE
TIMETIME
DATETIME, TIMESTAMPDATETIME2
BINARY, VARBINARY, BLOBVARBINARY(MAX)

MariaDB to Fabric

MariaDB TypeFabric Type
TINYINTTINYINT
SMALLINTSMALLINT
MEDIUMINT, YEAR, TINYTEXT, MEDIUMTEXT, LONGTEXT, ENUM, SET, TINYBLOB, MEDIUMBLOB, LONGBLOB, JSONNVARCHAR(MAX)
INTINT
BIGINTBIGINT
DECIMAL(p,s)DECIMAL(p,s)
FLOAT, DOUBLEFLOAT
BITBIT
VARCHAR(n)VARCHAR(n)
CHAR(n)CHAR(n)
TEXTVARCHAR(MAX)
DATEDATE
TIMETIME
DATETIME, TIMESTAMPDATETIME2
BINARY, VARBINARY, BLOBVARBINARY(MAX)

SAP HANA to Fabric

SAP HANA TypeFabric Type
TINYINTTINYINT
SMALLINTSMALLINT
INTEGERINT
BIGINTBIGINT
DECIMAL(p,s)DECIMAL(p,s)
SMALLDECIMALDECIMAL(38,18)
REALREAL
DOUBLEFLOAT
BOOLEANBIT
VARCHAR(n)VARCHAR(n)
NVARCHAR(n)NVARCHAR(n)
CHAR(n)CHAR(n)
NCHAR(n)NCHAR(n)
CLOB, TEXTVARCHAR(MAX)
NCLOBNVARCHAR(MAX)
DATEDATE
TIMETIME
TIMESTAMP, SECONDDATEDATETIME2
VARBINARY, BLOBVARBINARY(MAX)

Querying Tables

SQL Analytics Endpoint

-- Query a Delta table
SELECT * FROM your_lakehouse.dbo.customer LIMIT 10;

-- Aggregation
SELECT
c_nationkey,
COUNT(*) as customer_count,
SUM(c_acctbal) as total_balance
FROM your_lakehouse.dbo.customer
GROUP BY c_nationkey
ORDER BY customer_count DESC;

Spark Notebooks

# Read a Delta table
df = spark.read.table("customer")
df.show(10)

# Query with SQL
spark.sql("""
SELECT c_nationkey, COUNT(*) as cnt
FROM customer
GROUP BY c_nationkey
""").show()

# Write results back
result_df.write.mode("overwrite").saveAsTable("customer_summary")

Troubleshooting

Common Issues

Authentication Errors

Error: AADSTS7000215: Invalid client secret provided

Regenerate your client secret in Azure AD and update credentials.json.

Error: The user or service principal does not have access to the workspace

  1. Verify the Service Principal is added to the workspace
  2. Ensure it has Member or Contributor role
  3. Wait a few minutes for permissions to propagate

OneLake Connection Issues

Error: Unable to connect to OneLake storage

  1. Verify the directory format: onelake://workspace-name/lakehouse-name/
  2. Check that the Service Principal has Storage Blob Data Contributor role
  3. Ensure workspace and lakehouse names are correct (case-sensitive)

Table Creation Failures

Error: Failed to create table in Lakehouse

  1. Verify the SQL analytics endpoint is correct
  2. Check that the Lakehouse is active (not paused)
  3. Ensure sufficient capacity units are available
  4. Confirm Parquet files were exported to OneLake

SQL Endpoint Connection Issues

Error: Cannot connect to SQL analytics endpoint

  1. Verify the SQL endpoint hostname
  2. Ensure the SQL analytics endpoint is enabled
  3. Check firewall rules if connecting from on-premises

Verifying Export Success

Check files in OneLake:

  1. Open your Lakehouse in Fabric portal
  2. Go to the Files section
  3. Verify Parquet files exist in the expected folders

Check tables:

  1. Open the SQL analytics endpoint
  2. Expand Tables in the object explorer
  3. Verify your tables appear

Debug Mode

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID> \
--log_lev DEBUG

CLI Reference

Fabric Publishing Arguments

OptionTypeDescription
--publish_target IDStringCredential ID for Fabric publishing (required)
--publish_method METHODEnuminternal (Delta tables) or external (SQL views)
--publish_table_pattern PATTERNStringTable naming pattern (default: {table})
--n_jobs NIntegerParallel workers for table creation (default: 1)

Full Example

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--fastbcp_dir_path ./FastBCP_linux-x64/latest/ \
--fastbcp_p 2 \
--n_jobs 4 \
--target_storage_id onelake_storage \
--publish_target fabric_lakehouse \
--publish_method internal \
--publish_table_pattern "{schema}_{table}" \
--generate_metadata

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>

See Also

Copyright © 2026 Architecture & Performance.