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

# Excel を PostgreSQL に変換

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

## Excel から PostgreSQL へ、列ごとに

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

| ファイル内 | 最初の値 | 列 | PostgreSQL の型 | スクリプト内 |
| --- | --- | --- | --- | --- |
| Nº Cliente | `00127` | `no_cliente` | `text` | `'00127'` |
| Nombre | `Peña Muñoz` | `nombre` | `text` | `'Peña Muñoz'` |
| C.P. | `01234` | `c_p` | `text` | `'01234'` |
| Alta | `03/02/2024` | `alta` | `date` | `'2024-02-03'` |
| Activo | `sí` | `activo` | `boolean` | `TRUE` |
| Saldo | `1.234,50` | `saldo` | `numeric(6,2)` | `1234.50` |

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

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

### PostgreSQL

```shell
psql -v ON_ERROR_STOP=1 -d mydb -f clientes_2024.postgresql.sql
```

ON_ERROR_STOP を付けると、psql は最初のエラーで止まります。スクリプトは 1 つのトランザクションで実行されるため、読み込みに失敗してもデータベースは元のままです。 pgAdmin や DBeaver では、クエリウィンドウでスクリプトを開いて実行します。

スクリプトを使わずに:

```shell
intosql load clientes_2024.xlsx --into postgres://user@localhost/mydb
```

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

- 上にタイトルやメモがあっても見出し行を見つけ、末尾の合計行は除外します。
- Excel のシリアル値として保存された日付は、1900 年と 1904 年のどちらの日付システムでも正しい日付になります。
- 00127 のように先頭にゼロがあるコードはテキストのままです。ブックに複数のシートがある場合は、シートを選べます。

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

- 小数は numeric(p,s) として桁をそのまま保ち、時差付きの日付は timestamptz になります。
- PostgreSQL のテキストは NUL 文字を保持できないため、NUL を含む値からは取り除かれます。
- スクリプトは 1 つのトランザクションで実行されるので、読み込みに失敗しても中途半端な状態は残りません。

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

| 値 | PostgreSQL |
| --- | --- |
| はい/いいえ | `boolean` |
| 整数 | `integer` |
| 大きな整数 | `bigint` |
| 小数 | `numeric(p,s)` |
| 浮動小数点数 | `double precision` |
| 日付 | `date` |
| 時刻 | `time` |
| 日付と時刻 | `timestamp` |
| 日付と時刻、時差付き | `timestamptz` |
| テキスト | `text` |

## Excel から PostgreSQL への変換に関する質問

### Excel を PostgreSQL に変換するには？

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

### ブックのどのシートが変換されますか？

最初の表示されているシートです。ブックに複数のシートがある場合は「シート」オプションが表示され、別のシートを選べます。

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

はい/いいえの値は boolean、整数は integer、小数は numeric(p,s)、日付は date、時刻付きの日付は timestamp、テキストは text になります。サイズは各列の最も長い値から決まります。

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

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

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

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

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

ブラウザではブック全体を一度に読むため、上限はブラウザがこのページに割り当てるメモリです。デスクトップアプリとコマンドラインはどんなサイズのブックも扱えます。Apple M4 のノートパソコンでは、コマンドラインが 100 万行・117 MB のブックを約 1 秒で変換します。

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

- [Excel を SQL に変換](https://intosql.com/ja/excel-to-sql)
- [Excel を MySQL に変換](https://intosql.com/ja/excel-to-mysql)
- [Excel を MariaDB に変換](https://intosql.com/ja/excel-to-mariadb)
- [Excel を SQLite に変換](https://intosql.com/ja/excel-to-sqlite)
- [Excel を SQL Server に変換](https://intosql.com/ja/excel-to-sql-server)
- [Excel を Oracle に変換](https://intosql.com/ja/excel-to-oracle)

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

- [CSV を PostgreSQL に変換](https://intosql.com/ja/csv-to-postgresql)
- [JSON を PostgreSQL に変換](https://intosql.com/ja/json-to-postgresql)
