Exemplo n.º 1
0
 /**
  * @param Schema $targetSchema
  * @param \Doctrine\DBAL\Connection $connection
  * @return \Doctrine\DBAL\Schema\SchemaDiff
  */
 protected function getDiff(Schema $targetSchema, \Doctrine\DBAL\Connection $connection)
 {
     $schemaDiff = parent::getDiff($targetSchema, $connection);
     // oracle forces us to quote the identifiers
     foreach ($schemaDiff->changedTables as $tableDiff) {
         $tableDiff->name = $this->connection->quoteIdentifier($tableDiff->name);
         foreach ($tableDiff->changedColumns as $column) {
             $column->oldColumnName = $this->connection->quoteIdentifier($column->oldColumnName);
         }
     }
     return $schemaDiff;
 }
Exemplo n.º 2
0
 /**
  * @param Schema $targetSchema
  * @param \Doctrine\DBAL\Connection $connection
  * @return \Doctrine\DBAL\Schema\SchemaDiff
  */
 protected function getDiff(Schema $targetSchema, \Doctrine\DBAL\Connection $connection)
 {
     $schemaDiff = parent::getDiff($targetSchema, $connection);
     // oracle forces us to quote the identifiers
     foreach ($schemaDiff->changedTables as $tableDiff) {
         $tableDiff->name = $this->connection->quoteIdentifier($tableDiff->name);
         foreach ($tableDiff->changedColumns as $column) {
             $column->oldColumnName = $this->connection->quoteIdentifier($column->oldColumnName);
             // auto increment is not relevant for oracle and can anyhow not be applied on change
             $column->changedProperties = array_diff($column->changedProperties, ['autoincrement', 'unsigned']);
         }
         $tableDiff->changedColumns = array_filter($tableDiff->changedColumns, function (ColumnDiff $column) {
             return count($column->changedProperties) > 0;
         });
     }
     return $schemaDiff;
 }