Синтаксические диаграммы SQLite (www.sqlite.org) для оператора SELECT содержат путаницу между содержимым таблицы и именем таблицы.
Предположим, в вашей базе данных есть таблица с именем xxxx:
SELECT * FROM (SELECT tbl_name FROM sqlite_master WHERE tbl_name = 'xxxx' AND Type='table');
возвращает совершенно другой результат, чем
SELECT * FROM 'xxxx'
В первом операторе таблица-или-подзапрос - это то, что рассматривается как содержимое таблицы, во втором операторе таблица-или-подзапрос - это имя таблицы.
Так что вы должны сделать что-то вроде ответа Джоша. Запустите SQLite дважды, используя результат первого вызова для создания второго оператора SQL.