diff --git a/.scrutinizer.yml b/.scrutinizer.yml index 68a257a..299eab0 100644 --- a/.scrutinizer.yml +++ b/.scrutinizer.yml @@ -7,7 +7,6 @@ tools: # PHP php_code_sniffer: true php_cpd: true - php_cs_fixer: false php_mess_detector: true php_pdepend: true php_loc: true diff --git a/drivers/pdo_firebird/pdo_firebird_driver.php b/drivers/pdo_firebird/pdo_firebird_driver.php index dff7d41..fd5cefe 100644 --- a/drivers/pdo_firebird/pdo_firebird_driver.php +++ b/drivers/pdo_firebird/pdo_firebird_driver.php @@ -34,14 +34,14 @@ class PDO_Firebird extends DB_PDO { * Open the link to the database * * @param string $dsn - * @param string $user - * @param string $pass + * @param string $username + * @param string $password * @param array $options */ - public function __construct($dsn, $user='SYSDBA', $pass='masterkey', $options = array()) + public function __construct($dsn, $username='SYSDBA', $password='masterkey', $options = array()) { if (strpos($dsn, 'firebird') === FALSE) $dsn = 'firebird:'.$dsn; - + parent::__construct($dsn, $username, $password, $options); } @@ -62,22 +62,6 @@ class PDO_Firebird extends DB_PDO { // -------------------------------------------------------------------------- /** - * Bind a prepared query with arguments for executing - * - * @param string $sql - * @param array $params - * @return NULL - */ - public function prepare_query($sql, $params) - { - // You can't bind query statements before execution with - // the firebird database - return NULL; - } - - // -------------------------------------------------------------------------- - - /** * Create sql for batch insert * * @param string $table @@ -90,4 +74,4 @@ class PDO_Firebird extends DB_PDO { return NULL; } } -// End of firebird_driver.php \ No newline at end of file +// End of pdo_firebird_driver.php \ No newline at end of file diff --git a/drivers/pdo_firebird/pdo_firebird_sql.php b/drivers/pdo_firebird/pdo_firebird_sql.php index 5b7acee..d52d4fd 100644 --- a/drivers/pdo_firebird/pdo_firebird_sql.php +++ b/drivers/pdo_firebird/pdo_firebird_sql.php @@ -13,259 +13,13 @@ // -------------------------------------------------------------------------- +require_once realpath(__DIR__ . '/../firebird/firebird_sql.php'); + /** * Firebird Specific SQL * * @package Query * @subpackage Drivers */ -class PDO_Firebird_SQL implements iDB_SQL { - - /** - * Limit clause - * - * @param string $sql - * @param int $limit - * @param int $offset - * @return string - */ - public function limit($sql, $limit, $offset=FALSE) - { - // Keep the current sql string safe for a moment - $orig_sql = $sql; - - $sql = 'FIRST '. (int) $limit; - - if ($offset > 0) - { - $sql .= ' SKIP '. (int) $offset; - } - - $sql = preg_replace("`SELECT`i", "SELECT {$sql}", $orig_sql); - - return $sql; - } - - // -------------------------------------------------------------------------- - - /** - * Get the query plan for the sql query - * - * @param string $sql - * @return string - */ - public function explain($sql) - { - return $sql; - } - - // -------------------------------------------------------------------------- - - /** - * Random ordering keyword - * - * @return string - */ - public function random() - { - return NULL; - } - - - // -------------------------------------------------------------------------- - - /** - * Returns sql to list other databases - * - * @return NULL - */ - public function db_list() - { - return NULL; - } - - // -------------------------------------------------------------------------- - - /** - * Returns sql to list tables - * - * @return string - */ - public function table_list() - { - return << ..., - // 'constraint' => ..., - // 'index' => ..., - // ) - foreach($fields as $colname => $type) - { - if(is_numeric($colname)) - { - $colname = $type; - } - - $column_array[$colname] = array(); - $column_array[$colname]['type'] = ($type !== $colname) ? $type : ''; - } - - if( ! empty($constraints)) - { - foreach($constraints as $col => $const) - { - $column_array[$col]['constraint'] = $const; - } - } - - // Join column definitons together - $columns = array(); - foreach($column_array as $n => $props) - { - $str = '"'.$n.'" '; - $str .= (isset($props['type'])) ? "{$props['type']} " : ""; - $str .= (isset($props['constraint'])) ? "{$props['constraint']} " : ""; - - $columns[] = $str; - } - - // Generate the sql for the creation of the table - $sql = 'CREATE TABLE "'.$name.'" ('; - $sql .= implode(',', $columns); - $sql .= ')'; - - return $sql; - } - - // -------------------------------------------------------------------------- - - /** - * Drop the selected table - * - * @param string $name - * @return string - */ - public function delete_table($name) - { - return 'DROP TABLE "'.$name.'"'; - } - - // -------------------------------------------------------------------------- - - /** - * Create an SQL backup file for the current database's structure - * - * @return string - */ - public function backup_structure() - { - // TODO Implement Backup structure function - return ''; - } - - // -------------------------------------------------------------------------- - - /** - * Create an SQL backup file for the current database's data - * - * @param array $exclude - * @param bool $system_tables - * @return string - */ - public function backup_data($exclude=array(), $system_tables=FALSE) - { - // Determine which tables to use - if($system_tables == TRUE) - { - $tables = array_merge($this->get_system_tables(), $this->get_tables()); - } - else - { - $tables = $this->get_tables(); - } - - // Filter out the tables you don't want - if( ! empty($exclude)) - { - $tables = array_diff($tables, $exclude); - } - - $output_sql = ''; - - // Get the data for each object - foreach($tables as $t) - { - $sql = 'SELECT * FROM "'.trim($t).'"'; - $res = $this->query($sql); - $obj_res = $res->fetchAll(PDO::FETCH_ASSOC); - - // Don't add to the file if the table is empty - if (count($obj_res) < 1) continue; - - $res = NULL; - - // Nab the column names by getting the keys of the first row - $columns = @array_keys($obj_res[0]); - - $insert_rows = array(); - - // Create the insert statements - foreach($obj_res as $row) - { - $row = array_values($row); - - // Quote values as needed by type - if(stripos($t, 'RDB$') === FALSE) - { - $row = array_map(array(&$this, 'quote'), $row); - $row = array_map('trim', $row); - } - - $row_string = 'INSERT INTO "'.trim($t).'" ("'.implode('","', $columns).'") VALUES ('.implode(',', $row).');'; - - $row = NULL; - - $insert_rows[] = $row_string; - } - - $obj_res = NULL; - - $output_sql .= "\n\nSET TRANSACTION;\n".implode("\n", $insert_rows)."\nCOMMIT;"; - } - - return $output_sql; - } -} -// End of firebird_util.php \ No newline at end of file +class PDO_Firebird_Util extends Firebird_Util {} +// End of pdo_firebird_util.php \ No newline at end of file