public function renameTable($name, $new_name, $exec = true)
    {
        $name = $this->db->quotekey($name);
        $new_name = $this->db->quotekey($new_name);
        if (preg_match('/odbc/', $this->db->driver())) {
            $queries = array();
            $queries[] = "SELECT * INTO $new_name FROM $name;";
            $queries[] = $this->dropTable($name, false);
            return ($exec) ? $this->db->exec($queries) : implode("\n",$queries);
        } else {
            $cmd = array(
                'sqlite2?|pgsql' =>
                    "ALTER TABLE $name RENAME TO $new_name;",
                'mysql|ibm' =>
                    "RENAME TABLE $name TO $new_name;",
                'mssql|sqlsrv|sybase|dblib|odbc' =>
                    "sp_rename {$name}, $new_name"
            );
            $query = $this->findQuery($cmd);
            if (!$exec) return $query;
            return (preg_match('/mssql|sybase|dblib|sqlsrv/', $this->db->driver()))
                ? @$this->db->exec($query) : $this->db->exec($query);
        }
    }
public function renameTable($name, $new_name, $exec = true)
    {
        $name = $this->db->quotekey($name);
        $new_name = $this->db->quotekey($new_name);
        if (preg_match('/odbc/', $this->db->driver())) {
            $queries = array();
            $queries[] = "SELECT * INTO $new_name FROM $name;";
            $queries[] = $this->dropTable($name, false);
            return ($exec) ? $this->db->exec($queries) : implode("\n",$queries);
        } else {
            $cmd = array(
                'sqlite2?|pgsql' =>
                    "ALTER TABLE $name RENAME TO $new_name;",
                'mysql|ibm' =>
                    "RENAME TABLE $name TO $new_name;",
                'mssql|sqlsrv|sybase|dblib|odbc' =>
                    "sp_rename {$name}, $new_name"
            );
            $query = $this->findQuery($cmd);
            if (!$exec) return $query;
            return (preg_match('/mssql|sybase|dblib|sqlsrv/', $this->db->driver()))
                ? @$this->db->exec($query) : $this->db->exec($query);
        }
    }
public function renameTable ( $ name , $ new_name , $ exec = true ) { $ name = $ this -> db -> quotekey ( $ name ) ; $ new_name = $ this -> db -> quotekey ( $ new_name ) ; if ( preg_match ( '/odbc/' , $ this -> db -> driver ( ) ) ) { $ queries = array ( ) ; $ queries [ ] = "SELECT * INTO $new_name FROM $name;" ; $ queries [ ] = $ this -> dropTable ( $ name , false ) ; return ( $ exec ) ? $ this -> db -> exec ( $ queries ) : implode ( "\n" , $ queries ) ; } else { $ cmd = array ( 'sqlite2?|pgsql' => "ALTER TABLE $name RENAME TO $new_name;" , 'mysql|ibm' => "RENAME TABLE $name TO $new_name;" , 'mssql|sqlsrv|sybase|dblib|odbc' => "sp_rename {$name}, $new_name" ) ; $ query = $ this -> findQuery ( $ cmd ) ; if ( ! $ exec ) return $ query ; return ( preg_match ( '/mssql|sybase|dblib|sqlsrv/' , $ this -> db -> driver ( ) ) ) ? @ $ this -> db -> exec ( $ query ) : $ this -> db -> exec ( $ query ) ; } }
rename a table
@param string $name
@param string $new_name
@param bool $exec
@return bool
rename a table