最近在研究各種即時通訊軟體APP的data base
如果我想要明確地把對話紀錄內容等資料拿出來
基於各種APP的table架構跟名稱都不太一樣
要先去確認table、column名稱後再query
例如Line的對話紀錄在"chat_history"這張table,文字內容在"content"這個column
Messenger的對話紀錄在"messages"這張table,文字內容在"text"這個column
我的需求是:有沒有什麼query方式或套件,能讓我在不知道APP的table、column名稱下,去找出有特定資料格式的column,並把該column的資料都拿出來?
例如對話紀錄的資料格式通常是字串、可能會有標點符號等等。
目前在網路上爬文比較沒有提到相關的需求,
感謝
參考:
https://stackoverflow.com/questions/4654762/how-can-one-see-the-structure-of-a-table-in-sqlite
使用
PRAGMA table_info('foo');
或
SELECT sql FROM sqlite_master WHERE name='foo';
先說SQL Lite我不熟,只是餵了一下狗...參考下吧~~
google關鍵字:"SQL Lite 讀取所有Table name"
第一個連結就找到可能的答案:取得sqlite資料庫裡所有的表名 &複製表
取得sqlite資料庫裡所有的表名:
select name from sqlite_master where type='table' order by name;
查詢出某個表的所有欄位資訊:
PRAGMA table_info([tablename])