private function dropPrimaryKey(MidataConstraint $primaryKey) { $tableName = $primaryKey->tableName(); $adapter = $this->adapter(); $sql = ""; if ($adapter->isMysql()) { $table = $adapter->table($tableName); $primaryKey = $table->primaryKey(); if (count($primaryKey) == 1) { $column = $table->column($primaryKey[0]); if ($column->sequence()) { // prubujemy usunac klucz podstawowy z kolumny ktora // jest oznaczona jako auto_increment, wiec zanim // usuniemy klucz musimy usunac rowniez auto_increment // z kolumny $ddlColumn = MidataDDL::factory($adapter, MidataDDL::COLUMN); $column->sequence(false); $alter = $ddlColumn->alter($column); $sql .= "\n{$alter}"; } } } $sql .= "\nALTER TABLE `{$tableName}` DROP PRIMARY KEY"; return "{$sql};"; }