SDF ファイル形式とは?
.sdf ファイルは SQL Server Compact Database ファイルであり、Microsoft によって開発された独自のバイナリ形式です。.sdf ファイルは、.NET Framework 上に構築された Windows デスクトップおよびモバイルアプリケーションのデータベースストレージとして使用されます。.sdf ファイルは、固定長のテキストフィールドではなく、構造化されたバイナリページレイアウトでデータを保存し、最大 4 GB のリレーショナルデータを 1 つのポータブルファイルに保持します。
2005 年に導入された SQL Server Compact (SQL CE) は、サーバーを必要とせずにアプリケーション内でプロセス内実行される軽量の組み込みデータベースエンジンです。概念としては SQLite データベース や Microsoft Access データベース に似ています。
多くのデータベース移行および変換ツールが .sdf をサポートしており、他のシステムへのデータのインポートおよびエクスポートを容易にします。ただし、.sdf ファイルは汎用的な交換形式ではなく、SQL CE ランタイムに関連付けられており、Windows/.NET アプリケーションに固有のものです。
注意: .sdf は化学業界でも Structure-Data Files (プレーンテキストの分子データ) として使用されますが、これは SQL CE とは無関係の全く別の形式です。
セキュリティと安全性
リスク: LOW.sdf SQL CE データベースはデータであり実行ファイルではないため、ビューアで開くことは安全です。実用上の注意点が 2 つあります。SQL CE は 2021 年以降サポートされていないため、.sdf ファイルはレガシーとして扱い、編集前にバックアップを取ってください。また、一部の .sdf ファイルはパスワードで暗号化されているため、ビューアでデータベースパスワードを求められる場合があります。常に信頼できるソースからの .sdf ファイルのみを開き、偽装された二重拡張子(data.sdf.exe)に注意してください。
形式の詳細
概要- 化学 Structure-Data File (MDL SDF) - 分子構造とデータフィールドを保存するプレーンテキストのケモインフォマティクス形式 (MDL/Symyx)。Open Babel、RDKit、ChemDraw などのツールで読み取られ、SQL データベースの
.sdfとは無関係です。 - 一般的な「Standard/Spatial Data File」 - 一部のアプリ(Autodesk FDO / MapGuide、一部の GPS や測量ツールなど)が独自の空間データやエクスポートデータに
.sdfを使用しますが、これらはアプリ固有のものであり、SQL CE データベースではありません。
SDF ファイルを開くプログラム
.sdf を開いてテーブルのブラウズやクエリの実行を読み取り専用で行えます。無料で SQL CE のインストールも不要です。レガシーな .sdf を読むだけの目的なら最適な選択肢です。 .sdf を開いてデータの表示・編集、CSV/XML/XLS へのエクスポートが可能です。現在もメンテナンスされており(2026 年更新)、データを抽出する必要がある場合に適しています。 .sdf を開き、ブラウズ、クエリ、スクリプト作成、SQLite/SQL Server への移行を行えます。 .sdf データベースに接続できましたが、最新の SSMS では SQL CE サポートが廃止されたため、レガシーファイルには Toolbox や CompactView を優先してください。 .sdf をソースとして開き、そのテーブルやデータを別のデータベース(SQLite、MySQL、SQL Server など)にコピーします。 技術的詳細
詳細仕様| 開発元 | Microsoft Corporation |
| エンジンタイプ | 組み込みリレーショナル(サーバーレス、プロセス内) |
| 最大データベースサイズ | 1 つの `.sdf` ファイルにつき 4 GB |
| データモデル | リレーショナル(テーブル、インデックス、ビュー、外部キー) |
| SQL 方言 | Transact-SQL (T-SQL) サブセット |
| 保存形式 | バイナリページベース、非人間可読形式 |
| MIME タイプ | application/octet-stream |
| プラットフォームサポート | Windows のみ (.NET Framework デスクトップおよびモバイルアプリ) |
| ランタイム依存関係 | SQL CE エンジン DLL (`sqlcese40.dll`, `sqlceqp40.dll`) |
| トランザクションサポート | ACID 準拠トランザクション |
| 暗号化 | オプションの AES 128 ビットパスワード暗号化 |
| 最大行サイズ | 8,060 バイト |
| Unicode サポート | `nchar` / `nvarchar` 列タイプによる完全な Unicode 対応 |
| マジックバイト | 公開されたマジックナンバーなし。ファイル拡張子と SQL CE アプリケーションのコンテキストで識別 |
| リリース日 | 2005 (SQL Server Mobile / Compact Edition); last release SQL CE 4.0, 2011 |
| 仕様書 | en.wikipedia.org |
SDF の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。SDF ファイルについて最初の質問をしてみましょう。
よくある質問
.sdf ファイルを開くにはどうすればよいですか?
なぜメモ帳で .sdf を開くとランダムな文字のように見えるのですか?
.sdf はテキストではなくバイナリデータベースだからです。代わりにデータベースビューア(CompactView、SDF Viewer、SQL Server Compact Toolbox)で開いてください。SQL Server Compact はまだサポートされていますか?
.sdf ファイルはサードパーティ製ツールで引き続き開くことができますが、Microsoft はデータを SQLite または LocalDB に移行することを推奨しています。.sdf データベースを Excel/CSV に変換するにはどうすればよいですか?
すべての .sdf ファイルがデータベースですか?
古いアプリの .sdf からデータを復元できますか?
.sdf をコピーし、CompactView または SQL Server Compact Toolbox で開いてテーブルを読み取り、CSV や SQLite にエクスポートします。パスワードで保護されている場合は、そのアプリのデータベースパスワードが必要になります。