我需要能够读取SQLite数据库中的所有表,而不知道将调用哪些表.我正在研究以下example.db
chinhook.db
表
专辑,艺术家,客户,员工,流派,发票,InvoiceLine,MediaType,播放列表,PlaylistTrack,Track.
目前,我正在使用以下内容......
<?php
$db = new SQLite3('db/chinhook.db');
$tablesquery = $db->query("SELECT name FROM sqlite_master WHERE type='table';");
$tables = $tablesquery->fetchArray(SQLITE3_ASSOC);
foreach($tables as $name){
echo $name.'<br />';
}
?>
Run Code Online (Sandbox Code Playgroud)
我似乎只能得到第一张桌子的名字.我可以从其他表调用数据没问题,但sqlite_master表只包含一个表名.在线的其他人似乎报告这种方法是成功的.有任何想法吗?
提前致谢.
试试这个:
<?php
$db = new SQLite3('db/chinhook.db');
$tablesquery = $db->query("SELECT name FROM sqlite_master WHERE type='table';");
while ($table = $tablesquery->fetchArray(SQLITE3_ASSOC)) {
echo $table['name'] . '<br />';
}
?>
Run Code Online (Sandbox Code Playgroud)