* @copyright 2007-2018 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ namespace PrestaShop\Module\AutoUpgrade\UpgradeTools; use Db; class Database { private $db; public function __construct(Db $db) { $this->db = $db; } public function getAllTables() { $tables = $this->db->executeS('SHOW TABLES LIKE "' . _DB_PREFIX_ . '%"', true, false); $all_tables = array(); foreach ($tables as $v) { $table = array_shift($v); $all_tables[$table] = $table; } return $all_tables; } /** * ToDo: Send tables list instead. */ public function cleanTablesAfterBackup(array $tablesToClean) { foreach ($tablesToClean as $table) { $this->db->execute('DROP TABLE IF EXISTS `' . bqSql($table) . '`'); $this->db->execute('DROP VIEW IF EXISTS `' . bqSql($table) . '`'); } $this->db->execute('SET FOREIGN_KEY_CHECKS=1'); } }