Database マニュアル · Chapter 2
接続設定
DB_Sqlite サンプルは単一 SQLite 接続ひとつで動作します。接続情報は 2 箇所に併存し、片方が単一の真実(SoT)、もう片方が同期されたコピー です。
| 場所 | 役割 |
|---|---|
DB_Sqlite.xmp → "DatabaseOption" ブロック | SoT — プロジェクトのビルド / デプロイ時に同梱 |
XDatabase/connections.json | DB Studio が参照する同期コピー — ツールで編集すると自動更新 |
スクリプト(Data.xms 等)からは DB["local"] の一行でこの接続にアクセスします。
サンプルの実設定
DB_Sqlite.xmp から抜粋した DatabaseOption ブロックです。
"DatabaseOption": {
"Connections": [
{
"Name": "local",
"Type": "sqlite",
"Path": "XDatabase/LocalDB.db",
"Server": "",
"Database": "",
"User": "",
"PasswordEnc": "",
"ConnectionTimeout": 15,
"CommandTimeout": 30,
"PingIntervalSec": 10,
"ReconnectRetries": 3,
"Description": "テスト用 db"
}
],
"BackupFolder": "XDatabase/Backup",
"AutoBackupEnabled": false,
"AutoBackupIntervalHours": 24,
"BackupKeepLast": 30,
"JournalMode": "WAL"
}connections.json も同じ内容を持ち、DB Studio の GUI で編集すると両方が同時に更新されます。
項目詳細
接続本体
| キー | 値 / 意味 |
|---|---|
| Name | "local" — スクリプトで DB["local"] として参照する識別子。英小文字推奨 |
| Type | "sqlite"(代替: "mssql") |
| Path | "XDatabase/LocalDB.db" — SQLite ファイルパス(プロジェクトルート相対) |
| Server / Database / User / PasswordEnc | SQLite では空。MSSQL のみ使用 |
| ConnectionTimeout | 接続試行タイムアウト(秒)。既定 15 |
| CommandTimeout | 単一 SQL 実行タイムアウト(秒)。既定 30 |
| PingIntervalSec | 接続状態確認周期(秒)。既定 10。SQLite ではほぼ影響なし |
| ReconnectRetries | 切断時の自動再試行回数。既定 3 |
| Description | 人が読む説明。UI に表示され動作には影響なし |
オプション(Connections 配列の外)
| キー | 意味 |
|---|---|
| BackupFolder | 自動 / 手動バックアップファイルの保存フォルダ。第 9 章で扱う |
| AutoBackupEnabled | true で定期バックアップを実行 |
| AutoBackupIntervalHours | バックアップ周期(時間)。既定 24 |
| BackupKeepLast | 保持するバックアップ数。超過分は自動削除 |
| JournalMode | SQLite ジャーナルモード。推奨 "WAL"。第 9 章で扱う |
SQLite と MSSQL の違い — 一覧
| 項目 | SQLite | MSSQL |
|---|---|---|
Type | "sqlite" | "mssql" |
| 必須キー | Path | Server, Database, User, PasswordEnc |
| 備考 | 単一ファイルで完結、デプロイ簡単 | 外部サーバ必要、同時アクセスに強い |
同じスクリプトコード(DB[...].RunSqlSelect(...))が両エンジンで動作します。
新規接続を登録する 2 つの方法
A. DB Studio(推奨)
Solution Explorer
└── Data Editor Pages
└── Database
└── Database Connections[+ Add] → 上記表の項目を埋めて保存。connections.json と .xmp の DatabaseOption が同時更新されます。
B. 直接編集
DB_Sqlite.xmp または XDatabase/connections.json をテキストエディタで開き、Connections 配列にオブジェクトを追加することもできます。両方のファイルを一緒に更新 しないと、ツールごとに見える情報が異なってしまうので注意してください。
次の章へ
接続設定が終わったら、次はテーブル作成です。サンプルは order_history の 1 テーブルで全デモを行います。