---
title: "JSON を SQL Server に変換"
description: "JSON ファイルをブラウザ上で SQL Server 用の SQL に変換します。型付きの列を持つ CREATE TABLE と、続く INSERT 文を作成します。無料で、ファイルはアップロードされません。"
canonical: https://intosql.com/ja/json-to-sql-server
last_updated: 2026-10-15
---

# JSON を SQL Server に変換

JSON ファイルをドロップすると、CREATE TABLE と INSERT 文を含む SQL Server 用のスクリプトができます。各列に型を付け、すべての修正を行と列とともに一覧にします。

## JSON から SQL Server へ、列ごとに

上のサンプル pedidos_2024.json を IntoSQL が SQL Server 用に書き出した結果です。各列のファイル内の内容、付く型、最初の値がスクリプトでどうなるかを示します。

| ファイル内 | 最初の値 | 列 | SQL Server の型 | スクリプト内 |
| --- | --- | --- | --- | --- |
| pedido | `000481` | `pedido` | `nvarchar(8)` | `N'000481'` |
| cliente | `Peña Muñoz` | `cliente` | `nvarchar(16)` | `N'Peña Muñoz'` |
| fecha | `2024-02-03T10:15:00Z` | `fecha` | `datetimeoffset` | `'2024-02-03T10:15:00+00:00'` |
| total | `1234.5` | `total` | `decimal(6,2)` | `1234.5` |
| pagado | `true` | `pagado` | `bit` | `1` |
| notas | `` | `notas` | `nvarchar(32)` | `NULL` |

## スクリプトを SQL Server に読み込む

ダウンロードされるのは普通の .sql ファイルです。SQL Server 付属のツールで実行してください。

### SQL Server

```shell
sqlcmd -S localhost -d mydb -f 65001 -i pedidos_2024.sql_server.sql
```

-f 65001 でファイルを UTF-8 として読むため、アクセント記号や ñ は書かれたとおりに届きます。 SQL Server Management Studio や Azure Data Studio では、ファイルを開いて Execute を選びます。

## IntoSQL が JSON ファイルから読み取るもの

- ファイルはオブジェクトの配列、その配列を data などのキーの下に持つオブジェクト、または 1 行に 1 オブジェクト (NDJSON) のいずれでも使えます。
- 各キーが列になります。値の中のオブジェクトや配列は JSON テキストとして保持されます。
- 数値は桁をそのまま保ち、ISO 8601 の日付は日付またはタイムスタンプになります。

## SQL Server について知っておくこと

- テキストは N'...' の値を使った nvarchar なので、アクセント記号も失われません。4000 文字を超えるテキストは nvarchar(max) になります。
- はい/いいえの値は bit に、時差付きの日付は datetimeoffset になります。
- 長い値は分割して書き込まれるので、sqlcmd や SQL Server Management Studio でもスクリプトを実行できます。

### SQL Server で各種類の値がどう保存されるか

| 値 | SQL Server |
| --- | --- |
| はい/いいえ | `bit` |
| 整数 | `int` |
| 大きな整数 | `bigint` |
| 小数 | `decimal(p,s)` |
| 浮動小数点数 | `float` |
| 日付 | `date` |
| 時刻 | `time` |
| 日付と時刻 | `datetime2` |
| 日付と時刻、時差付き | `datetimeoffset` |
| テキスト | `nvarchar(n) · nvarchar(max)` |

## JSON から SQL Server への変換に関する質問

### JSON を SQL Server に変換するには？

このページ上部のコンバーターにファイルをドロップしてください。ヘッダーを見つけ、すべての値を読み取り、行った修正を一覧にしながら SQL Server 用のスクリプトを書き出します。スクリプトをダウンロードし、sqlcmd で実行してください。

### JSON ファイルはどんな形式が必要ですか？

オブジェクトの配列、その配列を data などのキーの下に持つオブジェクト、または 1 行に 1 オブジェクト (NDJSON) です。各キーが列になります。

### SQL Server ではどの型を使いますか？

はい/いいえの値は bit、整数は int、小数は decimal(p,s)、日付は date、時刻付きの日付は datetime2、テキストは nvarchar(n) になります。サイズは各列の最も長い値から決まります。

### SQL Server で先頭のゼロは残りますか？

はい。000481 のようなコードはテキストのまま扱われるため、SQL Server では nvarchar(8) として保存され、スクリプトには N'000481' と書かれます。

### スクリプトを使わずに SQL Server にデータを読み込めますか？

いいえ。スクリプトをダウンロードし、sqlcmd で実行してください。スクリプトなしの読み込みは、デスクトップアプリかコマンドラインから PostgreSQL、MySQL、MariaDB、SQLite に対して使えます。

### JSON ファイルはどのくらいの大きさまで扱えますか？

1 行に 1 オブジェクトの NDJSON は流れてくる順に読むため、ブラウザでも数 GB のファイルを扱えます。JSON ドキュメントは全体を一度に読むため、上限はブラウザがこのページに割り当てるメモリです。デスクトップアプリとコマンドラインはどんなサイズのファイルも扱えます。

## JSON から他のデータベースへ

- [JSON を SQL に変換](https://intosql.com/ja/json-to-sql)
- [JSON を PostgreSQL に変換](https://intosql.com/ja/json-to-postgresql)
- [JSON を MySQL に変換](https://intosql.com/ja/json-to-mysql)
- [JSON を MariaDB に変換](https://intosql.com/ja/json-to-mariadb)
- [JSON を SQLite に変換](https://intosql.com/ja/json-to-sqlite)
- [JSON を Oracle に変換](https://intosql.com/ja/json-to-oracle)

## 他のファイルから SQL Server へ

- [Excel を SQL Server に変換](https://intosql.com/ja/excel-to-sql-server)
- [CSV を SQL Server に変換](https://intosql.com/ja/csv-to-sql-server)
