Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como os índices podem ser verificados se eles existem em uma migração do Laravel?


Usar "doctrine-dbal" que o Laravel usa é a melhor solução:
Schema::table('persons', function (Blueprint $table) {
    $sm = Schema::getConnection()->getDoctrineSchemaManager();
    $indexesFound = $sm->listTableIndexes('persons');

    if(array_key_exists("persons_body_unique", $indexesFound))
        $table->dropUnique("persons_body_unique");
});