Menu

ja

SQLiteManager for PHP 7/8 (Modernized Fork of 1.2.4) 取扱説明書

⬅️ English Documentation (HOME)


⚠️ 【お知らせ:現在リリース準備中】
本プロジェクトは現在、公開に向けた最終的な検証およびリリース準備を行っています。
配布ファイル(SQLiteManager-2.0.0.zip)および README.md は近日中にアップロード予定です。公開まで今しばらくお待ちください。

本プロジェクトは、SourceForgeで公開され、長らく開発が停止していた名作「SQLiteManager 1.2.4」の設計を継承し、現代の PHP 7.4 / 8.3 環境において実用レベルで快適・安全に動作するよう、内部コードを全面リファクタリングして再構築した「バージョン 2.0.0(新生版)」です。

開発者が長年にわたり自身の開発現場で本ツールを日々愛用し、PHPやSQLiteのバージョンアップ(PDOへの刷新や、厳格化された非推奨警告の解消など)にその都度追随しながら、実際のユースケースに即して地道にコードの改良・バグ修正を重ねてきました。そのため、通常のデータ操作や日常的なデータベース管理においては、極めて安定して動作する堅牢性を備えています。

なお、今回の一般公開にあたり、気づいた範囲ではありますが、潜在的な課題や特定の条件下(エッジケース)で発生する未対応エラーについては、あらかじめ「動作対象外の割り切り仕様」として整理し、同梱の README.md に明記する形をとっています。

オリジナル開発チームへの深いリスペクトを胸に、古き良き優れたUI/UXはそのままに、現代の開発環境で再び一線級として使えるよう磨き上げた正統進化バージョンです。


🛠 1. 主な改修項目(概要)

詳しい技術仕様や割り切り仕様は同梱の README.md に記載していますが、主な変更点は以下の通りです。

  • PHP 8.x への完全対応: PDO/SQLite3 への全面刷新、非推奨警告(Deprecated)の完全排除
  • レガシー機能のパージ: MySQL接続機能、古いSPAWエディタ、独自プラグイン等の撤去による軽量化
  • CSV エクスポートの堅牢化: RFC 4180への完全準拠、改行混在データの確実な保護
  • 近代的な SQLite 構文のサポート: 複数文字演算子(->> 等)の正確な識別と保護
  • ALTER TABLE の完全化: 公式推奨の「12ステップ再構築プロセス」を厳密に実装
  • CSV アップロードの性能向上: fgetcsv() 読み込みへの最適化、エラー時の安全な自動ロールバック
  • 操作性の近代化: 軽量ライブラリの組み込みによるキーボードショートカット機能の追加

⌨️ 2. キーボードショートカット機能(操作説明)

大量のデータを扱う際、マウスレスで画面の切り替えや並び替えを高速に行えるよう、キーボードショートカット機能を独自に実装しています。

※テキストボックスやテキストエリアなどの入力フォームにフォーカスが当たっている間は、誤入力を防ぐためショートカット機能は自動的に無効化されます。

2.1. ページネーション(画面遷移)

データの一覧画面において、以下のキーで直感的なページ移動が可能です。

キー 実行される操作 対応する画面要素
j 次のページ へ移動 #nextpage (クリック)
k 前のページ へ移動 #beforepage (クリック)
t 最初のページ(トップ) へ移動 #toppage (クリック)
e 最後のページ(エンド) へ移動 #endpage (クリック)

2.2. データ構造の操作・選択

キー 実行される操作 対応する画面要素 / 挙動
l 左メニュー(ツリービュー)へのフォーカス 左フレーム(#left)の最上部にフォーカスを移動します。そこから Tab キーを押すことで、データベースツリーを順番に下へ移動できます。

2.3. カラムソート(動的バインド)

画面に表示されているテーブルのカラム(列)のヘッダーに対応しており、左から順に最大 9 カラム目まで、数字キー一発で並び替え(ソート)を実行できます。

キー 実行される操作 対応する画面要素
1 第 1 カラム でソートを実行 #column0 (クリック)
2 第 2 カラム でソートを実行 #column1 (クリック)
3 第 3 カラム でソートを実行 #column2 (クリック)
4 第 4 カラム でソートを実行 #column3 (クリック)
5 第 5 カラム でソートを実行 #column4 (クリック)
6 第 6 カラム でソートを実行 #column5 (クリック)
7 第 7 カラム でソートを実行 #column6 (クリック)
8 第 8 カラム でソートを実行 #column7 (クリック)
9 第 9 カラム でソートを実行 #column8 (クリック)

(※ 画面上に存在するカラムの数だけ自動的に有効化されます。該当するカラムがない数字キーを押しても動作しません)


💾 3. 主要機能の操作手順・ユースケース

CSVエクスポート機能の使い方

🔄 【現在、このセクションの内容は準備中です】
RFC 4180への準拠や改行データ保護に関する具体的な操作手順・ユースケースは、準備中です。今しばらくお待ちください。


🛠 4. 環境依存の挙動・制限仕様

CSVインポート時の最大サイズ制限(環境依存)

本ツールのCSVインポート処理は fgetcsv() によるストリーム読み込みを実装しているため、ロジック上はメモリ枯渇を起こさずに大容量ファイルの処理が可能です。

ただし、アップロード中にサーバー側で最大ファイルサイズ超過等のエラーが発生する場合は、PHP環境(php.ini)のコア制限に抵触しています。必要に応じて以下のディレクティブを適切に調整してください。

; サーバー環境に応じた任意のサイズを指定
upload_max_filesize = 50M
post_max_size = 50M

※設定反映には、環境に応じたWebサーバー等の再起動が必要です。


🔒 5. セキュリティと透明性について

本プロジェクトに実装されているキーボードショートカット機能は、世界中で広く採用実績のあるオープンソースの軽量ライブラリ shortcut.js (Version 2.01.B / OpenJS) を使用しています。

ソースコードの難読化や、外部サーバーとの不審な通信(キー入力情報の送信など)は一切行っておりません。同梱されている js/ ディレクトリ内のソースコードは、どなたでも自由に査読・検証していただけます。


👥 6. Credits / Acknowledgements

  • オリジナルプロジェクト: SQLiteManager 1.2.4 (SourceForgeにて Frédéric HENNINOT 氏およびプロジェクトコミュニティにより開発)
  • フォーク作成者: 星列 結衣 (PHP 7/8 互換性のためにコードベースを全面的にリファクタリング)

10数年前に素晴らしいツールを作り上げ、オープンソースとして公開してくれた Frédéric HENNINOT 氏とオリジナルの開発チームに深甚なる敬意を表します。彼らの偉大な設計がなければ、このバージョン 2.0.0 が誕生することはありませんでした。


Related

Wiki: Home