/** * Drops a table from the database. * * @param string $tableName The name of the database table to drop. * @param boolean $ifExists Optionally specify that the table must exist before it is dropped. * @return self Returns this object to support chaining. * * @throws \RuntimeException */ public function dropTable($tableName, $ifExists = true) { $this->_db->dropTable($tableName, $ifExists); return $this; }
/** * Method to delete all tables in a database with a given prefix. * * @param JDatabaseDriver $db JDatabaseDriver object. * @param string $prefix Database table prefix. * * @return boolean True on success. * * @since 3.1 */ public function deleteDatabase($db, $prefix) { $return = true; // Get the tables in the database. $tables = $db->getTableList(); if ($tables) { foreach ($tables as $table) { // If the table uses the given prefix, drop it. if (strpos($table, $prefix) === 0) { // Drop the table. try { $db->dropTable($table); } catch (RuntimeException $e) { JFactory::getApplication()->enqueueMessage(JText::sprintf('INSTL_DATABASE_ERROR_DELETE', $e->getMessage()), 'notice'); $return = false; } } } } return $return; }
/** * Method to delete all tables in a database with a given prefix. * * @param JDatabaseDriver $db JDatabaseDriver object. * @param string $name Name of the database to process. * @param string $prefix Database table prefix. * * @return boolean True on success. * * @since 3.0 */ public function deleteDatabase($db, $name, $prefix) { $return = true; // Get the tables in the database. $tables = $db->getTableList(); if ($tables) { foreach ($tables as $table) { // If the table uses the given prefix, drop it. if (strpos($table, $prefix) === 0) { // Drop the table. try { $db->dropTable($table); } catch (RuntimeException $e) { $this->setError($e->getMessage()); $return = false; } } } } return $return; }