Home
Name Modified Size InfoDownloads / Week
README.md 2026-10-05 32.5 kB
Totals: 1 Item   32.5 kB 1

📖 English Edition Available: The English documentation is located in the second half of this page. Please scroll down to read it. (英語の取扱説明書は、このページの下半分にあります。そのまま下へスクロールしてください。)


SQLiteManager for PHP 7.4 / 8.5 (Custom Port)

⚠️ SECURITY NOTICE: This tool is designed for managed environments. NEVER install it on a public web server without proper authentication or access control.

  • Feature Default (OFF): For safety reasons, specific legacy functions (e.g., eval-based features) are disabled by default via a configuration constant in the source code. You can enable them manually in your local/secure environment at your own risk.
  • Status: As-Is / No Support / Issues, Tickets, and Merge Requests are disabled.
  • Compatibility: PHP 7.4 / 8.5 and SQLite 3.7–3.45 (tested). SQLite 3.46+ is not officially tested but may still work.
  • Language: The UI supports English and Japanese.

Status:Beta (Under Development). The source code ZIP file is coming soon.(現在開発中です。ソースコードのZIPファイルは準備が整い次第、この場所にアップロードされます)


SQLiteManager (PHP 7.4 / 8.5 対応・私的改修版)

本プロジェクトは、2010年で開発が停止しているSourceForgeの「SQLiteManager 1.2.4」をベースに、現代のPHP実行環境(PHP 7.4 / 8.5、SQLite 3.7〜3.45)で動作させることを目的とした改修版です。

オリジナルのフレーム形式およびユーザーインターフェース構造を維持したまま、現代の実行環境における各種エラー(Notice、Warning、TypeError、ValueError等)を抑止し、現代の環境に適合しないレガシーな機構を排除したクリーンな改修が施されています。

なお、本改修版は、セキュリティ強化や全ての既知のバグ修正を目的としたものではありません。あくまでも私自身が利用する機能を中心に、PHP 7.4 / 8.5環境で支障なく動作するよう改修した個人的なものです。ご利用になられる方の操作手順やSQL文、データベース内容によってはエラーが出る可能性は十分にあります。


🚨 【重要】セキュリティおよび設置環境に関する警告 🚨

本ツールを、認証やアクセス制限(IP制限等)が設定されていない、第三者がアクセスできる公開領域に設置しないでください。

本ツールはデータベースの直接的な閲覧・操作を行う管理ツールです。phpMyAdmin等のデータベース管理ツールと同様に、適切なアクセス制限のないインターネット公開環境に設置した場合、重大な情報漏洩やデータの破壊のリスクに直結します。

設置する際は、ローカル環境(localhost)で利用するか、あるいはサーバー上に設置する場合でも、必ずBasic認証、IPアドレス制限、VPN等の適切なアクセス制御を施した上で、すべて利用者の自己責任においてご使用ください。

【機能の初期値(オフ)について】 オリジナル版に存在する一部の動的処理(eval等を用いた処理)については、安全のため、ソースコード内の定数設定により初期状態で「無効(オフ)」化されています。ローカル環境等の安全な環境で当該機能を利用する場合は、ソースコード内の設定を自己責任で変更してください。

【免責事項】 本ツールの利用(設置、実行、改修、公開等を含む)によって生じた、直接的・間接的な損害(データの破損、不正アクセス、サーバーの停止、その他一切の不利益)について、開発者および改修者は一切の責任を負いません。すべて利用者の自己責任(As-Is)において使用するものとします。(使用前に必ずデータベースのバックアップを取得してください。)


⚠️ 公開にあたっての基本スタンス

  • 現状有姿(As-Is)での公開:バグや未実装機能を含め、現在の状態でそのまま公開されます。
  • 無保証・無サポート:導入、設定、運用に関するサポートや動作保証は行っておりません。
  • 要望・連絡の遮断:機能追加、バグ修正等の要望や連絡は受け付けておりません。SourceForge上のチケット機能(Tickets)、マージリクエスト(Merge Requests)、ディスカッション(Discussion)はすべて無効化されています。

📌 同梱の INSTALL ファイルについて

  • ZIPアーカイブ内に同梱されている INSTALL ファイルは、2010年当時のオリジナル版(SQLiteManager 1.2.4)の仕様・動作要件が記載された歴史的資料です。
  • 現在の動作要件および最新の設置手順については、INSTALL ファイルではなく本ファイル(README)の記述を参照してください。

💻 インストール方法(設置手順)

本ツールはWebインストーラー等はありません。ファイルをサーバーに配置するシンプルなスタイルです。

  1. ファイルの配置 ダウンロードしたZIPファイルを解凍し、Webサーバーのドキュメントルート以下の任意のディレクトリ(例: /htdocs/sqlitemanager/ や /var/www/html/sqlitemanager/ など)にすべてのファイルを配置します。

    💡 アップデート(上書き更新)時の動作について

    • 管理用DB(config3.db)および設定ファイル(user_defined.inc.php)は自動保護されます。ファイルが存在しない場合のみ .default ファイルから生成されるため、上書き配置しても既存の設定や登録DB情報は保持されます。
    • サンプルDB(test.sqlite3)は上書き更新されます。サンプルDB内で独自にテーブル作成やデータ挿入を行っている場合は、上書き前にバックアップを取るか、画面上から新規データベース(固有のファイル名)を作成してご利用ください。
  2. アクセス制限の設定(必須) 本改修版は、古い独自認証ロジックを廃止しています。ローカル環境(localhost)以外、または第三者がアクセスできる可能性のある環境に設置する場合は、必ずサーバー側で .htaccess 等を用いたBasic認証やIPアドレス制限を設定してください。

  3. 起動確認および言語選択 ブラウザから設置したURL(例: http://localhost/sqlitemanager/index.php)にアクセスし、画面が表示されれば完了です。 ※言語は、メイン画面のプルダウンメニューから切り替え可能です。


🛠 主な改修内容

  • PHP 8.5 対応 現代の PHP 8.5 環境において、従来の安定性を維持したままエラーを出さず快適に動作するよう、内部処理やデータベース接続(PDO)の実装を全面的に最適化。
  • PHP 7.4 から最新 PHP 8.5 への完全適合(警告ゼロの実現) PHP 7.4環境はもちろん、最新のPHP 8.5環境にいたるまで、あらゆるFatal Error、Warning、そしてDeprecated(非推奨警告)を一切発生させないレベルまでコードを徹底的に洗練。サーバーのエラーログを1行も汚さない、完全にクリーンで快適な実行環境を実現しました。
  • レガシー機能および外部コンポーネントの廃止 現代の環境においてセキュリティリスクや互換性の維持が困難となった古いライブラリ等を撤去し、シンプルかつ安全な構成へ移行。
    • 対応データベースの集約:MySQL接続機能および古いSQLite2への対応を廃止し、「SQLite3専用」へと一本化。
    • SPAWエディタ / JSCALENDAR:動作不能なレガシーエディタ類を削除。
    • プラグイン機能 / 認証機能:旧バージョンの独自プラグイン機構および簡易認証ロジックを廃止。
  • CSV エクスポートの RFC 4180 準拠強化 データ先頭のダブルクォート検知バグを修正し、規格へ完全準拠。改行混在データも壊れずに正しくエクスポート可能。
  • 複数文字演算子の識別サポート(JSON構文等への対応) ->>、->、<= などの複数文字演算子を最長一致で正確に識別。SQLiteの近代的なJSON抽出構文等に完全対応。
  • テーブル構造変更(ALTER TABLE)プロセスの堅牢化 カラム追加・削除時におけるデータ破損リスクを排除するため、SQLite公式が推奨する「12ステップのテーブル再構築プロセス」を厳密に実装。
  • CSV アップロードの性能向上とロールバック対応 fgetcsv() によるストリーム読み込みと100行ずつの分割トランザクションにより、大容量データもメモリ枯渇なしで高速処理。要素数不一致によるクラッシュ防御や、エラー発生時の自動ロールバックを実装。
  • キーボードショートカットによる操作性の向上 実績のある shortcut.js を採用し、カラムソートやページ移動をマウスレスで高速化(詳細なキーバインドはプロジェクトの Wiki を参照)。
  • 外部キー制約(Foreign Key)の常時有効化スイッチを追加 互換性を考慮し初期状態は無効(SQLite標準)としつつ、内部の ALWAYS_ENABLE_FOREIGN_KEYS スイッチにより接続時の自動有効化(ON)に対応。

📌 主な制限事項(仕様・割り切り)

本ツールは、レガシーなアーキテクチャの現状有姿(As-Is)維持を大前提としています。以下の挙動は、内部の簡易字句解析(パース)エンジンやオリジナル版の基本設計に起因する、本改修版における仕様および制限事項です。なお、すべての制限事項を網羅しているわけではなく、主要な機能制限を列挙しています。

  1. 手入力SQLでの LIMIT 句指定:SQL実行時に自前で LIMIT 句を含めると、画面上のページネーション表示と件数が、実表示内容と不一致になります。ページ送りを行う場合は LIMIT 句を含めずに実行してください。 [sql-duplicate]
  2. 1行複数文の禁止:SQLのパース(分割)は ;\n のみを基準としています。1行の中に複数のSQL文(文末セミコロン区切り)が記述されている場合、最初の1文のみが実行されます。 [multi-statement]
  3. トランザクションクエリのスキップ:手入力クエリ内に記述された BEGIN TRANSACTION や COMMIT は自動的にスキップされます。 [skip-transaction]
  4. 識別子(テーブル名・カラム名等)の命名制限と互換性:データの安全性確保および JavaScript 連携時の不具合を防ぐため、入力チェックを行っています。SQLite の予約語、シングル/ダブルクォート、空白文字を含む識別子の入力はエラーとして拒否されます。また、手動実行等で作成した特殊な識別子は、別DBへのコピー機能など一部の操作が制限されます。 [identifier-validation]
  5. 特殊文字のエスケープ不完全性:識別子に特殊文字(<, >, & 等)が含まれる場合、HTMLの hidden 属性等を経由した画面遷移時にエスケープが不完全になる場合があります(英数字による命名を前提としています)。 [escape-incomplete]
  6. CSVエクスポート時のNULL・空文字の判別制限:CSV形式でのエクスポートは、オリジナル版の仕様を完全再現しています。そのため、CSVのフォーマット上 NULL と空文字('')の厳密な描き分けは行わず、どちらも文字を出力しない空の状態として処理されます。 [csv-null-indistinguishable]
  7. EXPLAIN QUERY PLAN実行時の表示仕様:EXPLAIN QUERY PLAN クエリ実行時は、実行計画のツリー構造を途切れさせず視認するため、ページング設定を無視して強制的に1ページに全行を表示します。 [explain-no-page]
  8. 存在しない対象へのPRAGMA実行時の制限:存在しない対象に対して PRAGMA table_info が実行された場合、呼び出し側での結果解析の仕様により、以降の処理で予期せぬ実行エラーや表示の不整合が発生する場合があります。 [pragma-fatal]
  9. 複雑なクエリ発行時のグリッドソート制限:複数の SELECT や ORDER BY を内包する複雑な手入力クエリは、簡易文字列パースの限界により、画面上でのグリッドソート(列クリックによる並び替え)に対応していません。 [complex-sort]
  10. トリガー編集画面の ON 対象初期選択制限:トリガー名にダブルクォート等が含まれている場合、編集画面において「ON対象」のセレクトボックスが初期選択状態にならない場合があります。 [trigger-select]
  11. 独自全文検索(fulltextsearch)の機能制限:演算子 fulltextsearch は単語区切り言語(英語等)専用であり、日本語には非対応です。また、リアルタイム解析処理のため、大容量データでは処理時間が長くなる場合があります。 [fts-performance-limit]
  12. 大容量テーブルのエクスポート制限:エクスポート機能は、全対象データを一度にメモリ上に蓄積するレガシーな仕様を継続しています。PHP の memory_limit 到達によって処理が停止する場合は仕様とし、大容量データは CLI(コマンドライン)等での処理を推奨します。 [large-export]
  13. コメント自動除去時のパース制限:内部のコメント除去ロジックはクォート内を判別しないため、手入力クエリのデータ(文字列)内に -- や /* などの記号が含まれている場合、それらもコメントとして誤判別され、SQL文の一部が欠落して実行エラーとなる場合があります。 [purge-comment]
  14. クエリパースにおけるクォート閉じ忘れの制限:クエリ内に閉じ忘れたクォート(', ", `)が存在する場合、正規表現による文字列の退避処理が正常に機能せず、以降のトークン分割処理(字句解析)が意図通りに行われない場合があります。 [odd-quote]
  15. 空白を含む予約語の単語分割制限:PRIMARY KEY や TEMP ALL などの空白を含む予約語は、システム内部の簡易字句解析(スペース区切り)により、単語ごとに強制分割されて処理されます。 [token-split]
  16. 多言語対応の制限:日本語・英語以外の言語ファイルは追加メッセージの翻訳が未対応のため、一部の表記が英語でフォールバック表示されます。運用は日本語または英語を推奨します。 [lang-limit]
  17. 複合インデックス等の操作制限:複数カラムによる複合インデックスの管理や、既存インデックスの属性直接変更(INDEX ⇔ UNIQUE)には対応していません。変更時は DROP 後の再作成が必要です。 [complex-idx]
  18. カラム変更時のインデックス追従制限:カラム名を変更した際、対象カラムの既存インデックスは自動更新されません。必要に応じてインデックスを手動で再作成してください。 [rename-idx]
  19. テーブルコピー時のオブジェクト制限:テーブルコピー機能はテーブル構造とデータのみを複製します。名前の衝突を防ぐため、既存の INDEX・TRIGGER・VIEW は継承されません。 [copy-table-schema-only]
  20. 主キー(PK)なし編集時のROWID競合制限:主キーが定義されていないテーブルのデータ特定にはSQLite内部の ROWID を自動取得して使用します。そのため、他プロセスによる並行操作や VACUUM 実行が重なった場合、行の物理位置が変動し、意図しない行の誤更新・誤削除が発生するリスクがあります。 [rowid-concurrency-limit]

📄 ライセンス(License)

本改修版は、オリジナル版(SQLiteManager 1.2.4)のライセンスを継承し、GNU General Public License v2.0 (GPL-2.0) の下で公開されます。

  • Original Code: Frédéric HENNINOT
  • Modified by: 星列 結衣 (Yui Hoshizura / SF: yui-hoshizura)

SQLiteManager for PHP 7.4 / 8.5 (Custom Port) - English Edition

⚠️ SECURITY NOTICE: This tool is designed for managed environments. NEVER install it on a public web server without proper authentication or access control.

  • Feature Default (OFF): For safety reasons, specific legacy functions (e.g., eval-based features) are disabled by default via a configuration constant in the source code. You can enable them manually in your local/secure environment at your own risk.
  • Status: As-Is / No Support / Issues, Tickets, and Merge Requests are disabled.
  • Compatibility: PHP 7.4 / 8.5 and SQLite 3.7–3.45 (tested). SQLite 3.46+ is not officially tested but may still work.
  • Language: The UI supports English and Japanese. (You can switch languages via the dropdown menu on the main screen.)

SQLiteManager (PHP 7.4 / 8.5 Compatible - Custom Refactored Version)

This project is a refactored version based on "SQLiteManager 1.2.4," a masterpiece whose development on SourceForge stopped in 2010. The objective of this project is to make it operational in modern PHP environments (PHP 7.4 / 8.5, SQLite 3.7–3.45).

While preserving the original frame structure and user interface, this version cleans up the code base by suppressing various errors (Notice, Warning, TypeError, ValueError, etc.) and removing legacy mechanisms that do not fit modern execution environments.

Please note that this modified version is not intended to strengthen overall security or fix all known bugs. It is a personal modification made primarily to ensure that the functions I use on a daily basis operate without issue under PHP 7.4 / 8.5. Depending on your specific operations, SQL queries, or database structure, you may still encounter errors.


🚨 [IMPORTANT] Security and Installation Environment Warning 🚨

NEVER install this tool in a publicly accessible directory without proper authentication or access control (such as IP restrictions).

This tool is a database management utility that allows direct viewing and manipulation of data. Just like phpMyAdmin or similar tools, exposing it to the public internet without proper restrictions poses a severe risk of data breach and destruction.

When deploying, use it exclusively within a local environment (localhost), or ensure that strict access controls (Basic Authentication, IP address filtering, VPN, etc.) are implemented on the server side. Use this tool entirely at your own risk.

[Default Settings for Specific Features] Certain dynamic processing features from the original version (such as those using eval) are disabled (turned OFF) by default via constants in the source code for safety reasons. If you wish to use these features in a secure local environment, you may modify the source code configuration at your own risk.

[Disclaimer] The developer and modifier assume absolutely no responsibility or liability for any direct or indirect damage (including data corruption, unauthorized access, server downtime, or any other disadvantages) resulting from the use, installation, execution, modification, or distribution of this tool. It is provided entirely "As-Is." (Please ensure to back up your database before use.)


⚠️ Basic Policy for Release

  • As-Is Release: The project is released in its current state, including potential bugs or unimplemented features.
  • No Warranty / No Support: No support, assistance, or operational guarantees are provided for installation, configuration, or usage.
  • No Feedback Requests: Requests for feature additions, bug fixes, or general inquiries are not accepted. Tickets, Merge Requests, and Discussions on SourceForge have been completely disabled.

📌 Regarding the Included INSTALL File

  • The INSTALL file included within the ZIP archive is a historical document reflecting the specifications and operational requirements of the original 2010 release (SQLiteManager 1.2.4).
  • For current system requirements and the latest installation procedures, please disregard the INSTALL file and refer to the instructions in this file (README) instead.

💻 Installation Method (Deployment Guide)

This tool does not feature a web-based installer. It uses a straightforward deployment method by manually uploading the files to your server.

  1. File Placement Extract the downloaded ZIP archive and place all files into any directory below your web server's document root (e.g., /htdocs/sqlitemanager/ or /var/www/html/sqlitemanager/).

    💡 Note on Upgrading (Overwriting existing installations):

    • The management database (config3.db) and configuration file (user_defined.inc.php) are automatically protected. They are generated from .default files only if they do not exist, ensuring your settings and registered databases are preserved when overwriting.
    • The sample database (test.sqlite3) will be overwritten. If you have added custom tables or data to test.sqlite3, please back it up before overwriting, or create a new database file using "Create New Database" within the application.
  2. Access Control Configuration (Mandatory) This modified version completely removes the legacy built-in authentication logic. If you deploy this tool outside a local environment (localhost) or in any environment accessible by third parties, you must configure proper server-side restrictions, such as Basic Authentication or IP address filtering via .htaccess or server configs.

  3. Verification and Language Selection Access the deployment URL via your browser (e.g., http://localhost/sqlitemanager/index.php). The installation is complete once the interface loads successfully. Note: You can switch the UI language at any time using the dropdown menu located on the main screen.


🛠 Main Modifications & Enhancements

  • Full PHP 8.5 Compatibility Internal processes and database connection (PDO) implementations have been comprehensively optimized to ensure smooth and reliable operation under modern PHP 8.5 environments while maintaining previous stability.
  • Zero-Warning Clean Code (Full Compliance from PHP 7.4 up to PHP 8.5) The entire codebase has been meticulously refined to ensure that absolutely zero Fatal Errors, Warnings, or Deprecated notices are triggered under any environment from PHP 7.4 up to the latest PHP 8.5. This achieves a perfectly clean execution environment without cluttering your server error logs.
  • Removal of Legacy Features and External Components Obsolete libraries and features whose compatibility is difficult to maintain or that pose security risks in modern environments have been removed to transition into a simple and secure structure.
    • Consolidation of Supported Databases: Dropped support for MySQL connections and legacy SQLite2, fully centralizing the tool as an "SQLite3 Dedicated Utility."
    • SPAW Editor / JSCALENDAR: Defunct legacy editors and calendars have been removed.
    • Plugin & Authentication Features: The proprietary plugin mechanism and simple built-in authentication logic of the old version have been decommissioned.
  • Enhanced RFC 4180 Compliance for CSV Export Fixed a bug in detecting leading double quotes to fully comply with standard specifications. Safely exports data containing embedded newlines without corruption.
  • Multi-Character Operator Recognition (Modern JSON Syntax Support) Accurately identifies multi-character operators such as ->>, ->, and <= using longest-match recognition, fully supporting modern SQLite JSON extraction syntax.
  • Robust ALTER TABLE Process To eliminate data corruption risks during column additions or deletions, the tool strictly implements the SQLite-recommended "12-step table rebuild process."
  • Improved Performance and Rollback Support for CSV Upload Utilizes fgetcsv() stream reading and chunked 100-row transactions to process large datasets rapidly without memory exhaustion. Includes crash prevention for row-length mismatches and automatic rollback on errors.
  • Modernized Keyboard Shortcuts for Enhanced Usability Integrates the proven shortcut.js library to streamline column sorting and pagination without a mouse. (Please refer to the project Wiki for full keybindings).
  • Optional Auto-Enable Switch for Foreign Key Constraints Maintains the default SQLite behavior (disabled) for backward compatibility, while introducing an ALWAYS_ENABLE_FOREIGN_KEYS internal switch to automatically activate constraints upon connection.

📌 Main Limitations & Specifications

This tool is provided under the premise of maintaining a legacy architecture "As-Is." Therefore, the following behaviors are classified as architectural specifications and limitations inherent to the internal simplified parsing engine and the original design layout. Please note that this list does not cover all possible edge cases, but rather highlights major functional constraints.

  1. LIMIT Clause in Manual SQL Queries: Including a manual LIMIT clause in your SQL query will cause a mismatch between the pagination UI and the actual records displayed. Please execute queries without manual LIMIT clauses when utilizing pagination. [sql-duplicate]
  2. Multiple Statements in One Line Disallowed: SQL parsing is strictly based on ;\n. If multiple SQL statements separated by semicolons are written on a single line, only the first statement will be executed. [multi-statement]
  3. Skipping Transaction Queries: BEGIN TRANSACTION and COMMIT statements entered manually in queries are automatically skipped. [skip-transaction]
  4. Identifier Naming Restrictions and Compatibility: Input validation is enforced to ensure data safety and prevent JavaScript errors. Identifiers containing SQLite reserved words, single/double quotes, or whitespace are rejected. Additionally, tables with special identifiers created via manual execution may restrict certain operations, such as the database copying function. [identifier-validation]
  5. Incomplete Special Character Escaping: If identifiers contain special characters (such as <, >, &), escaping may be incomplete during screen transitions via HTML hidden attributes. It is highly recommended to name elements using alphanumeric characters only. [escape-incomplete]
  6. CSV Export NULL vs. Empty String Limitation: The CSV export functionality perfectly reproduces the specifications of the original version. Therefore, it does not strictly differentiate between NULL and an empty string (''); both are handled as empty fields with no character output. [csv-null-indistinguishable]
  7. EXPLAIN QUERY PLAN Display Specification: When executing an EXPLAIN QUERY PLAN query, pagination settings are ignored, and all rows are forcibly displayed on a single page to prevent breaking the tree structure of the execution plan and ensure full visibility. [explain-no-page]
  8. PRAGMA Execution on Non-Existent Targets: Executing PRAGMA table_info on a target that does not exist may result in unexpected execution errors or display inconsistencies in subsequent processes due to a failure in result parsing. [pragma-fatal]
  9. Grid Sorting Limitation with Complex Queries: Complex manual queries containing multiple SELECT or ORDER BY structures do not support column-click grid sorting due to the limitations of the simple string parser. [complex-sort]
  10. Trigger Edit Screen Target Pre-selection Limitation: If a trigger name contains double quotes or specific special characters, the "ON Target" dropdown menu on the edit screen may fail to automatically select the current target. [trigger-select]
  11. Full-Text Search (fulltextsearch) Language Limitation: The built-in fulltextsearch operator is designed exclusively for word-separated languages (e.g., English) and does not support Japanese. Additionally, due to real-time parsing, execution times may increase significantly with large datasets. [fts-performance-limit]
  12. Large Table Export Limitation: The export function retains the legacy specification of storing all target data in memory at once. If execution halts due to reaching the PHP memory_limit, it is treated as a specification boundary. For large datasets, using the CLI (Command Line Interface) is highly recommended. [large-export]
  13. Comment Stripping Parser Limitation: If data strings within the query contain symbols like -- or /*, they may be incorrectly parsed as SQL comments due to the parser not differentiating text within quotes, resulting in partial query truncation and execution errors. [purge-comment]
  14. Quote Mismatch in Query Parsing: Queries containing an odd number of quotes (', ", `) due to missing closures will prevent the system from accurately determining character boundaries, leading to unexpected token splitting. [odd-quote]
  15. Word Splitting of Reserved Words with Spaces: Reserved words containing spaces, such as PRIMARY KEY or TEMP ALL, are forcibly split into individual words by the internal lexical analyzer during processing. [token-split]
  16. Multilingual Support Limitation: Languages other than Japanese and English are not fully updated for newly added message translations. Unsupported strings will automatically fall back to English. Usage in English or Japanese is highly recommended. [lang-limit]
  17. Composite Index and Attribute Management Restrictions: The system does not support managing composite indexes (multi-column) or directly modifying index attributes (e.g., switching between INDEX and UNIQUE). To apply changes, you must DROP and recreate the index. [complex-idx]
  18. Index Tracking Limitation on Column Renaming: When a column is renamed, any existing indexes targeting that column are not automatically updated. Please recreate the relevant indexes manually if necessary. [rename-idx]
  19. Object Restrictions on Table Copying: The table copy function replicates only the table schema structure and its data. To avoid naming conflicts, existing INDEX, TRIGGER, and VIEW objects are not inherited. [copy-table-schema-only]
  20. ROWID Concurrency Limitation on Tables Without Primary Keys: Since ROWID is utilized to identify specific rows, executing an SQLite VACUUM or having concurrent processes append/delete data may shift row positions, resulting in accidental updates or deletions of incorrect rows. [rowid-concurrency-limit]

📄 License

This modified version inherits the license of the original version (SQLiteManager 1.2.4) and is distributed under the GNU General Public License v2.0 (GPL-2.0).

  • Original Code: Frédéric HENNINOT
  • Modified by: 星列 結衣 (Yui Hoshizura / SF: yui-hoshizura)
Source: README.md, updated 2026-10-05