SQLite データベースで列名とそのテーブルを取得する必要があります。必要なのは、2 つの列を持つ結果セットです: table_name | column_name
.
MySQL では、データベースに対する SQL クエリを使用してこの情報を取得できますINFORMATION_SCHEMA
。ただし、SQLite はテーブルを提供していますsqlite_master
。
sqlite> create table students (id INTEGER, name TEXT);
sqlite> select * from sqlite_master;
table|students|students|2|CREATE TABLE students (id INTEGER, name TEXT)
CREATE TABLE
これは、私にとって役に立たないDDL 構築クエリ ( ) になり、関連情報を取得するにはこれを解析する必要があります。
テーブルのリストを取得してそれらを列に結合するか、テーブル名の列と一緒に列を取得する必要があります。PRAGMA table_info(TABLENAME)
テーブル名がないので、うまくいきません。データベース内のすべての列メタデータを取得したいと考えています。
データベースにクエリを実行して結果セットとしてその情報を取得するより良い方法はありますか?