protected function copyTable(Connection $fromDB, Connection $toDB, $table, InputInterface $input, OutputInterface $output) { /** @var $progress \Symfony\Component\Console\Helper\ProgressHelper */ $progress = $this->getHelperSet()->get('progress'); $query = 'SELECT COUNT(*) FROM ' . $table; $count = $fromDB->fetchColumn($query); $query = 'SELECT * FROM ' . $table; $statement = $fromDB->executeQuery($query); $progress->start($output, $count); $progress->setRedrawFrequency($count > 100 ? 5 : 1); while ($row = $statement->fetch()) { $progress->advance(); if ($input->getArgument('type') === 'oci') { $data = $row; } else { $data = array(); foreach ($row as $columnName => $value) { $data[$toDB->quoteIdentifier($columnName)] = $value; } } $toDB->insert($table, $data); } $progress->finish(); }