Rename table column
public renameColumn ( string $fromColumn, |
||
$fromColumn | string | |
$toColumn |
/** * Rename column requires $schema object. */ public function renameColumn($table, $oldColumn, $newColumn) { if ($this->driver instanceof MySQLDriver && is_string($newColumn)) { throw new InvalidArgumentException('MySQLDriver requires the new column to be a column definition object.'); } $query = new AlterTableQuery($table); $query->renameColumn($oldColumn, $newColumn); $sql = $query->toSql($this->driver, new ArgumentArray()); $this->query($sql); }
public function testRenameColumnFromColumnClass() { $driver = new MySQLDriver(); $args = new ArgumentArray(); $q = new AlterTableQuery('products'); $q->renameColumn(new Column('name'), new Column('title', 'varchar(30)')); $sql = $q->toSql($driver, $args); $this->assertQuery($q); is('ALTER TABLE `products` CHANGE COLUMN `name` `title` varchar(30)', $sql); }