Skip to content
← All Guides
🔒 No Upload Required ✅ Free Forever 🌐 Browser-Based
Tutorial

How to Migrate Access to SQL Server: Step-by-Step Tutorial

By Bill Crawford  ·  February 2026  ·  8 min read  ·  Last updated February 26, 2026

Connect on LinkedIn →

🚀 Open the Access to T-SQL Script Builder and follow along.

Open Tool →

Steps

  1. Locate Your Access File
  2. Drop the File into the Tool
  3. Review the Schema Overview
  4. Adjust Type Mappings
  5. Configure Settings
  6. Generate Scripts
  7. Download and Review
  8. Run in SQL Server
  9. Validate

This tutorial walks you through migrating a Microsoft Access database to SQL Server using the Access to T-SQL Script Builder. The tool reads your .mdb or .accdb file entirely in your browser — nothing is uploaded — and generates a complete set of T-SQL scripts you can run against any SQL Server instance.

Step 1: Locate Your Access File

Find the .mdb or .accdb file you want to migrate. The tool supports all Access versions from Access 97 (Jet 3) through Microsoft 365 (ACE 16). Make sure the file is not currently open in Access or locked by another process — while the browser reads a copy, a locked file may not copy correctly to the browser's file input.

Tip: If you have an Access front-end/back-end split, you want the back-end file — that's the one containing the data tables.

Step 2: Drop the File into the Tool

Open the Access to T-SQL Script Builder. You'll see a drop zone at the top of the tool. Either drag your file onto it or click to browse. The tool uses mdb-reader, a pure JavaScript Access parser, to read the file entirely in your browser. The status bar will show "Loading…" and then switch to "Ready" with the number of tables detected.

Step 3: Review the Schema Overview

Once the file is loaded, the tool displays a Database Info bar showing the format (Jet 3, Jet 4, ACE 12, etc.), table count, total rows, and relationship count. Below that, a Schema Overview section shows cards for each table with column names, types, primary key indicators, and row counts.

Review the schema cards to make sure all expected tables are present. System tables (names starting with MSys) are automatically filtered out.

Step 4: Adjust Type Mappings

The Type Mapping panel shows every Access data type detected in your database with the default SQL Server equivalent. Review these mappings and adjust any that don't fit your needs. Common overrides include:

Step 5: Configure Settings

Expand the Configuration panel to set options for the generated scripts:

Step 6: Generate Scripts

Click the Generate T-SQL Script button. The tool produces a set of numbered script files:

FileContents
01_Create_Database.sqlCREATE DATABASE + schema
02_Create_Tables.sqlAll table definitions with mapped types
03_xx_Load_*.sqlOne per table with batched INSERT statements
04_Foreign_Keys.sqlAll relationship constraints
05_Validation.sqlRow count verification

Step 7: Download and Review

Click Download .zip to get all scripts in a single archive. Before running anything, open the scripts in a text editor and review them — especially the table definitions and any tables with complex data types.

Step 8: Run in SQL Server

Connect to your SQL Server instance using SSMS, Azure Data Studio, or sqlcmd. Run the scripts in order:

  1. 01_Create_Database.sql — creates the target database
  2. 02_Create_Tables.sql — creates all tables
  3. 03_xx_Load_*.sql files — in the numbered order (tables are topologically sorted so parents load before children)
  4. 04_Foreign_Keys.sql — adds relationship constraints
  5. 05_Validation.sql — verifies row counts

Tip: If any foreign key constraint fails, it usually means a parent table is missing a referenced row. Check the validation script output first, then investigate the specific constraint.

Step 9: Validate

Run the validation script to compare row counts between source and target. The script reports PASS or FAIL for each table and gives a summary at the end. Beyond row counts, spot-check a few rows — especially date fields, currency values, and Yes/No columns — to confirm data fidelity.

🚀 Try it now — drop your .mdb or .accdb file and get T-SQL scripts in seconds.

Open Tool →

Related Tools & Guides

Further reading: Microsoft — T-SQL Reference

BC
Bill Crawford
Founder, Data Conversion Center

Bill Crawford is a data systems developer and technical founder with over 30 years of professional experience in accounting, finance, and business operations.

He holds a Bachelor's degree in Accounting and has spent more than three decades working within financial and operational environments. Over the past 10 years, he has been heavily involved in the development, implementation, and refinement of financial and enterprise data systems for both Fortune 500 companies and smaller organizations.

His work bridges finance and technology — combining deep domain knowledge in structured reporting and accounting workflows with hands-on SQL development and database architecture experience.

Bill founded DataConversionCenter.com to build practical, browser-based tools that simplify complex data challenges, including:

Rather than focusing on theoretical examples, his tools and articles are informed by real-world challenges encountered in enterprise reporting systems, financial databases, and operational data environments.

Professional Background
  • Bachelor's Degree in Accounting
  • 30+ years in accounting and finance
  • 10+ years deeply involved in financial and enterprise systems development
  • Experience supporting Fortune 500 and small-to-mid-sized organizations
  • Hands-on SQL development across relational database platforms

Bill's mission is to reduce friction in data workflows — particularly for professionals working with structured financial, operational, and reporting data.