ACCDB ファイル形式とは?
.accdb 形式は、Microsoft Access 2007 以降で使用される標準のデータベースファイルです。これは以前の .mdb 形式を置き換え、基盤となるデータベースエンジンとして ACE (Access Connectivity Engine) を導入しました。これは、以前のバージョンで使用されていた Jet エンジンの後継です。
.mdb と比較して、.accdb にはいくつかの重要な機能が追加されています。データマクロ(テーブルに直接アタッチされたイベント駆動型ロジック)、多値フィールド、レコード内にファイルを埋め込むための「添付ファイル」フィールド型、およびより強力な 128 ビット AES 暗号化です。Microsoft Outlook や SharePoint との統合も拡張されましたが、SharePoint Online 用の Access Services 公開機能はその後 Microsoft によって廃止されました。
.mdb に存在していた機能のうち、意図的に削除されたものには、ユーザーレベルのセキュリティやデータベースのレプリケーションが含まれます。これらはいずれもレガシーと見なされ、より現代的なアクセス制御アプローチに取って代わられました。
ファイルヘッダーには特徴的なシグネチャがあります。オフセット 0 のバイト列 00 01 00 00 に続き、オフセット 4 に ASCII 文字列 Standard ACE DB があり、これにより .mdb ファイル(同じオフセットに Standard Jet DB がある)と区別されます。データベースが開いている間、Access はその横にコンパニオンファイルである .laccdb ロックファイルを作成します。
Microsoft Access 自体以外にも、.accdb ファイルは LibreOffice Base や Linux 上の MDB Tools を使用して読み取り(場合によっては書き込み)モードで開くことができます。コンパイル済みまたはロック済みのバリアントには、.accde(ソースコード削除済み)、.accdt(テンプレート)、.accdr(ランタイムモードコピー)があります。
セキュリティと安全性
リスク: MEDIUM.accdb にはコードを実行する VBA マクロやデータマクロが含まれる可能性があるため、信頼できないソースからのデータベースにはマルウェアが含まれている可能性があります。Access は不明なデータベースをマクロ無効(トラストセンター / 黄色のセキュリティバー)で開きます。送信者を信頼できない限り、無効のままにしてください。マクロを除けば、データ自体は不活性です。別のセッションでデータベースが開いている間は、.laccdb ロックファイルを絶対に削除しないでください。古いデータベースについては、.accdb ファイルをパスワードで暗号化できることに注意してください(データベースツール > パスワードを使用して暗号化)。ACCDB 2010 以降の暗号化は適度に強力ですが、初期の ACCDB 2007 の暗号化は脆弱です。
形式の詳細
概要ACCDB ファイルを開くプログラム
技術的詳細
詳細仕様| データベースエンジン | Microsoft ACE (Access Connectivity Engine)。Jet 4.0 の後継として Access 2007 で導入 |
| ファイルシグネチャ | オフセット 0 に 16進数 `00 01 00 00`、オフセット 4 から ASCII 文字列 `Standard ACE DB` |
| MIME タイプ | `application/x-msaccess` |
| 最大データベースサイズ | 1 つの `.accdb` ファイルにつき 2 GB |
| テーブルあたりの最大フィールド数 | 255 フィールド |
| 多値フィールド | サポート。単一のフィールドに複数の値を保存可能。`.mdb` では利用不可 |
| 添付ファイルフィールド型 | サポート。レコード内にファイルを直接埋め込み可能。`.mdb` では利用不可 |
| データマクロ | サポート。「挿入後」や「更新後」などのテーブルイベントにアタッチされたイベント駆動型ロジック。`.mdb` には不在 |
| 暗号化 | 128 ビット AES データベースパスワード暗号化。`.mdb` の脆弱な XOR ベースのスキームを置換 |
| ロックファイル | 同時アクセスを調整するためにデータベースが開いている間自動的に作成される `.laccdb` コンパニオンファイル |
| ユーザーレベルのセキュリティ | 削除。以前はワークグループ情報ファイル (`.mdw`) を介して `.mdb` で利用可能だった |
| コンパイル済みバリアント | `.accde` - VBA ソースコードが削除された、配布用のロック済みコピー |
| テンプレートバリアント | `.accdt` - 事前に構築されたデータベース構造を配布するための Access データベーステンプレート |
| ランタイムバリアント | `.accdr` - ナビゲーションウィンドウやデザインビューを非表示にするランタイムモードで開く |
| Unicode サポート | テキストフィールドのネイティブ UTF-16 ストレージ |
| サードパーティサポート | LibreOffice Base による読み書き、Linux 上の MDB Tools (`mdb-export`, `mdb-tables`) による読み取り専用アクセス |
| リリース日 | 2007 (Access 2007, with the new ACE database engine) |
| 仕様書 | learn.microsoft.com |
ACCDB の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。ACCDB ファイルについて最初の質問をしてみましょう。