1
resposta

Código da Migration diferente

Boa noite!

O código da migration que eu estou gerando fica diferente do mostrado na aula em 1 única linha...embora tudo funcione perfeitamente (criar aluno, remover, buscar).

Minha migration:

 public function up(Schema $schema) : void
    {
        // this up() migration is auto-generated, please modify it to your needs
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'sqlite', 'Migration can only be executed safely on \'sqlite\'.');

        $this->addSql('CREATE TABLE Aluno (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, nome VARCHAR(255) NOT NULL)');
        $this->addSql('CREATE TABLE Telefone (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, numero VARCHAR(255) NOT NULL, aluno_id INTEGER DEFAULT NULL)');
    }

Código da migration mostrada na aula:

public function up(Schema $schema) : void
    {
        // this up() migration is auto-generated, please modify it to your needs
        $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'sqlite', 'Migration can only be executed safely on \'sqlite\'.');

        $this->addSql('CREATE TABLE Aluno (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, nome VARCHAR(255) NOT NULL)');
        $this->addSql('CREATE TABLE Telefone (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, aluno_id INTEGER DEFAULT NULL, numero VARCHAR(255) NOT NULL)');
        $this->addSql('CREATE INDEX IDX_D8448137B2DDF7F4 ON Telefone (aluno_id)');
    }

Alguém sabe explicar o porquê de mesmo o código das Entidades estando iguais e suas anotações, uma migration não cria a INDEX e a outra cria?

Obrigado!

1 resposta

Fala, Rodrigo. Pode ser versão do SQLite instalado, plataforma (SO) utilizado, muitas coisas. Eu não me preocuparia com isso no momento. Em cursos futuros aqui da alura ensinamos a trabalhar com índices no Doctrine então isso não seria um problema se você precisasse realmente do índice.

:-)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software