Rearrang mysql and sqlite drivers
This commit is contained in:
parent
7b95348cd7
commit
851ff0b916
@ -62,96 +62,6 @@ class MySQL extends DB_PDO {
|
|||||||
|
|
||||||
// --------------------------------------------------------------------------
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
/**
|
|
||||||
* Get databases for the current connection
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_dbs()
|
|
||||||
{
|
|
||||||
$res = $this->query("SHOW DATABASES WHERE `Database` !='information_schema'");
|
|
||||||
return db_filter(array_values($res->fetchAll(PDO::FETCH_ASSOC)), 'Database');
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the tables available in the current database
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_tables()
|
|
||||||
{
|
|
||||||
$res = $this->query('SHOW TABLES');
|
|
||||||
return db_filter($res->fetchAll(PDO::FETCH_NUM), 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get list of views for the current database
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_views()
|
|
||||||
{
|
|
||||||
$res = $this->query('SELECT `table_name` FROM `information_schema`.`views`');
|
|
||||||
return db_filter($res->fetchAll(PDO::FETCH_NUM), 'table_name');
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Not applicable to MySQL
|
|
||||||
*
|
|
||||||
* @return FALSE
|
|
||||||
*/
|
|
||||||
public function get_sequences()
|
|
||||||
{
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Return list of custom functions for the current database
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_functions()
|
|
||||||
{
|
|
||||||
$res = $this->query('SHOW FUNCTION STATUS');
|
|
||||||
return $res->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Retrun list of stored procedures for the current database
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_procedures()
|
|
||||||
{
|
|
||||||
$res = $this->query('SHOW PROCEDURE STATUS');
|
|
||||||
return $res->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Return list of triggers for the current database
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function get_triggers()
|
|
||||||
{
|
|
||||||
$res = $this->query('SHOW TRIGGERS');
|
|
||||||
return $res->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns system tables for the current database
|
* Returns system tables for the current database
|
||||||
*
|
*
|
||||||
|
@ -20,12 +20,12 @@ class MySQL_SQL extends DB_SQL{
|
|||||||
/**
|
/**
|
||||||
* Convienience public function for creating a new MySQL table
|
* Convienience public function for creating a new MySQL table
|
||||||
*
|
*
|
||||||
* @param [type] $name [description]
|
* @param string $name
|
||||||
* @param [type] $columns [description]
|
* @param array $columns
|
||||||
* @param array $constraints=array() [description]
|
* @param array $constraints=array()
|
||||||
* @param array $indexes=array() [description]
|
* @param array $indexes=array()
|
||||||
*
|
*
|
||||||
* @return [type]
|
* @return string
|
||||||
*/
|
*/
|
||||||
public function create_table($name, $columns, array $constraints=array(), array $indexes=array())
|
public function create_table($name, $columns, array $constraints=array(), array $indexes=array())
|
||||||
{
|
{
|
||||||
@ -155,5 +155,101 @@ class MySQL_SQL extends DB_SQL{
|
|||||||
// @todo Implement Backup function
|
// @todo Implement Backup function
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list other databases
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function db_list()
|
||||||
|
{
|
||||||
|
return "SHOW DATABASES WHERE `Database` !='information_schema'";
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list tables
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function table_list()
|
||||||
|
{
|
||||||
|
return 'SHOW TABLES';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Overridden in MySQL class
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function system_table_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list views
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function view_list()
|
||||||
|
{
|
||||||
|
return 'SELECT `table_name` FROM `information_schema`.`views`';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list triggers
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function trigger_list()
|
||||||
|
{
|
||||||
|
return 'SHOW TRIGGERS';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list functions
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function function_list()
|
||||||
|
{
|
||||||
|
return 'SHOW FUNCTION STATUS';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list stored procedures
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function procedure_list()
|
||||||
|
{
|
||||||
|
return 'SHOW PROCEDURE STATUS';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list sequences
|
||||||
|
*
|
||||||
|
* @return FALSE
|
||||||
|
*/
|
||||||
|
public function sequence_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//End of mysql_sql.php
|
//End of mysql_sql.php
|
@ -209,5 +209,114 @@ class SQLite_SQL extends DB_SQL {
|
|||||||
|
|
||||||
return $sql_structure;
|
return $sql_structure;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list other databases
|
||||||
|
*
|
||||||
|
* @return FALSE
|
||||||
|
*/
|
||||||
|
public function db_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list tables
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function table_list()
|
||||||
|
{
|
||||||
|
return <<<SQL
|
||||||
|
SELECT "name"
|
||||||
|
FROM "sqlite_master"
|
||||||
|
WHERE "type"='table'
|
||||||
|
ORDER BY "name" DESC
|
||||||
|
SQL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Overridden in SQLite class
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function system_table_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list views
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function view_list()
|
||||||
|
{
|
||||||
|
return <<<SQL
|
||||||
|
SELECT "name" FROM "sqlite_master" WHERE "type" = 'view'
|
||||||
|
SQL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns sql to list triggers
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function trigger_list()
|
||||||
|
{
|
||||||
|
return <<<SQL
|
||||||
|
SELECT *
|
||||||
|
FROM "information_schema"."triggers"
|
||||||
|
WHERE "trigger_schema" NOT IN
|
||||||
|
('pg_catalog', 'information_schema')
|
||||||
|
SQL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list functions
|
||||||
|
*
|
||||||
|
* @return FALSE
|
||||||
|
*/
|
||||||
|
public function function_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list stored procedures
|
||||||
|
*
|
||||||
|
* @return FALSE
|
||||||
|
*/
|
||||||
|
public function procedure_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// --------------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return sql to list sequences
|
||||||
|
*
|
||||||
|
* @return FALSE
|
||||||
|
*/
|
||||||
|
public function sequence_list()
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
//End of sqlite_sql.php
|
//End of sqlite_sql.php
|
@ -165,7 +165,7 @@ SQL;
|
|||||||
{
|
{
|
||||||
$this->assertFalse($this->db->get_dbs());
|
$this->assertFalse($this->db->get_dbs());
|
||||||
}
|
}
|
||||||
|
|
||||||
function TestGetSchemas()
|
function TestGetSchemas()
|
||||||
{
|
{
|
||||||
$this->assertFalse($this->db->get_schemas());
|
$this->assertFalse($this->db->get_schemas());
|
||||||
|
Loading…
Reference in New Issue
Block a user