Ejemplo n.º 1
0
$arquivo->gravar("------ DROP DE SEQUENCES ------");
if (isset($comparaListaSequence)) {
    $arquivo->gravar("\nDROP SEQUENCE " . implode("\nDROP SEQUENCE ", $comparaListaSequence) . "\n\n");
}
// loop das tabelas do schema
foreach ($resultadoTableDev as $table) {
    // Lista dos CAMPOS
    $resultadoDev = $dev->queryAll($colunaQuery . "'{$table}'");
    $resultadoHomolog = $homolog->queryAll($colunaQuery . "'{$table}'");
    // Cria um arquivo com um comentario contendo a tabela analisada em questão
    $arquivo->gravar("\n\n------------- TABELA: {$table} -------------\n\n");
    //Dropar as CONSTRAINTS do Homolog que em comparação ao ambiente de desenvolvimento esta à mais
    $devConstraintArrayAssoc = $dev->queryAllAssoc($constraintQuery . "'{$table}'");
    $homologConstraintArrayAssoc = $homolog->queryAllAssoc($constraintQuery . "'{$table}'");
    $constraint = new Constraint($devConstraintArrayAssoc, $homologConstraintArrayAssoc, $table);
    $arquivo->gravar($constraint->dropConstraints() . "\n\n");
    // Dropar COLUNAS do Homolog que em comparação ao ambiente de desenvolvimento esta à mais
    $devColunaArrayAssoc = $dev->queryAllAssoc($colunaQuery . "'{$table}'");
    $homologColunaArrayAssoc = $homolog->queryAllAssoc($colunaQuery . "'{$table}'");
    $coluna = new Coluna($devColunaArrayAssoc, $homologColunaArrayAssoc, $table);
    $arquivo->gravar($coluna->dropColunas() . "\n\n");
    // Verificar se o nome da coluna da tabela Dev e Homolog são iguais e os atributos são iguais
    // não considerando a mesma posição onde se encontram
    for ($i = 0; $i < count($resultadoDev); $i++) {
        $nomeColunaDev = $resultadoDev[$i][0];
        $existeCampo = "nao";
        $addTable = array();
        $existePropriedade = 1;
        for ($j = 0; $j < count($resultadoHomolog); $j++) {
            $setSequenceAdd = array();
            // verifica se nome da coluna se é igual