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

# JSON を MySQL に変換

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

## JSON から MySQL へ、列ごとに

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

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

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

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

### MySQL

```shell
mysql --default-character-set=utf8mb4 mydb < pedidos_2024.mysql.sql
```

スクリプト自体が utf8mb4 を設定します。このフラグでクライアントも同じ方法で送信するため、アクセント記号が崩れません。 MySQL Workbench では、File、Run SQL Script の順に選び、ファイルを指定します。

スクリプトを使わずに:

```shell
intosql load pedidos_2024.json --into mysql://user@localhost/mydb
```

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

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

## MySQL について知っておくこと

- はい/いいえの値は tinyint(1) になります。255 文字までのテキストは varchar、それより長いテキストはサイズに応じて text、mediumtext、longtext になります。
- スクリプトは utf8mb4 を使い SQL モードを設定するので、アクセント記号、絵文字、バックスラッシュ、改行は書かれたとおりに読み込まれます。
- MySQL の datetime はタイムゾーンを保存しません。

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

| 値 | MySQL |
| --- | --- |
| はい/いいえ | `tinyint(1)` |
| 整数 | `int` |
| 大きな整数 | `bigint` |
| 小数 | `decimal(p,s) · double` |
| 浮動小数点数 | `double` |
| 日付 | `date` |
| 時刻 | `time(6) · time` |
| 日付と時刻 | `datetime(6) · datetime` |
| 日付と時刻、時差付き | `datetime(6) · datetime` |
| テキスト | `varchar(n) · text · mediumtext · longtext` |

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

### JSON を MySQL に変換するには？

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

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

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

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

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

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

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

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

はい、IntoSQL Pro で可能です。デスクトップアプリとコマンドラインが MySQL に接続し、テーブルを作成してから行を直接読み込みます。

### 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 を MariaDB に変換](https://intosql.com/ja/json-to-mariadb)
- [JSON を SQLite に変換](https://intosql.com/ja/json-to-sqlite)
- [JSON を SQL Server に変換](https://intosql.com/ja/json-to-sql-server)
- [JSON を Oracle に変換](https://intosql.com/ja/json-to-oracle)

## 他のファイルから MySQL へ

- [Excel を MySQL に変換](https://intosql.com/ja/excel-to-mysql)
- [CSV を MySQL に変換](https://intosql.com/ja/csv-to-mysql)
