Want to import data from JSON file to SQL Server ?
Try Withdata FileToDB, a desktop to SQL Server converter for Windows, MacOS, and Linux, Convert to SQL Server, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Convert locally and privately, avoid uploading large or private file(s) to online services.
Download Withdata FileToDB
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
Import data from JSON file to SQL Server in 4 steps
Login to SQL Server -> Choose JSON file -> Set SQL Server table -> Import JSON to SQL Server
Choose SQL Server and logon.
Click “Wizard – 1 File To 1 Table” at task dialog.
Select the “JSON” file type.
then show the wizard.
Step #1. Open a JSON file.
Step #2. Choose a SQL Server table and config fields.
Step #3. Preview data.
Step #4. Import JSON to SQL Server.
Import JSON to SQL Server in command line
Save session, and then create .bat file for Windows command line, or .sh file for Linux / macOS.
Set scheduled tasks for importing JSON to SQL Server
You can schedule and automate this “JSON to SQL Server” conversion task by:
- Save session and create .bat (Windows) or .sh (Linux/macOS) file for ” to SQL Server” conversion.
- Set scheduled task for ” to SQL Server” conversion.
More about Withdata FileToDB – JSON to SQL Server converter
Download Withdata FileToDB
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
JSON → SQL Server reference
Type mapping
| Value kind | in JSON | in SQL Server |
|---|---|---|
| Int | 1234 (number) | int |
| Bigint | 9007199254740993 | bigint |
| Decimal | 1234.56 (number) | decimal(p,s) |
| Float | 1.234e10 (number) | float |
| Text | "text" (string) | nvarchar(n) |
| Long text | "multi-line\ntext" (escaped newline inside a string) | nvarchar(max) |
| Date | "2026-09-18" (string) | date |
| Datetime | "2026-09-18T14:30:00Z" (string) | datetime2 |
| Binary | "base64:..." (string) | varbinary(max) |
| Boolean | true / false (boolean) | bit |
| JSON | nested object or array, kept as structure | nvarchar(max) |
Dialect differences
JSON is a file format and SQL Server is a database server, so the target has to be told the types the file never carried - the rows below are where the two sides diverge.
| Property | in JSON | in SQL Server |
|---|---|---|
| port | — | 1433 |
| identifiers | Double quotes; backslash escapes | [square brackets] |
| row limit | — | SELECT TOP n |
| dates | No date type: dates arrive as strings and the reader must p... | datetime, datetime2, date, time |
| long text | — | nvarchar(max) |
| binary | Not supported natively - base64 inside a string | varbinary(max) |
| separator | Braces and commas | — |
| encoding | UTF-8 by definition | — |
| typing | string, number, boolean, null, object, array - no date type | — |
| shape | Nested objects and arrays | Tables of rows and columns |
| ceiling | Whole document is usually parsed into memory | — |
Command line
| Side | Command |
|---|---|
| SQL Server | bcp |
| SQL Server (load) | bcp, or BULK INSERT |
Convert your data online, free
Free in-browser converters for CSV, Excel, JSON, XML and SQL: Withdata Online Data Conversion. Large files, batch conversion or scheduling? See the offline desktop apps, or browse all data conversion tools.