Всегда возвращает True или False? Решайся.
Во всяком случае, документы говорят:
Открывает соединение с базой данных, используя
текущие значения подключения. Возвращает
верный успех; в противном случае возвращается
ложный. Информация об ошибке может быть
извлекается с помощью lastError ().
Так что, если он всегда возвращает False, это потому, что он не может открыть базу данных. Вызовите db.lastError (), чтобы он объяснил вам, почему.