zend-blog-3-backend

Форк
0
/
Version20230603113418.php 
77 строк · 2.2 Кб
1
<?php
2

3
declare(strict_types=1);
4

5
namespace Application\Migrations;
6

7
use Doctrine\DBAL\Schema\Schema;
8
use Doctrine\Migrations\AbstractMigration;
9
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
10
use Symfony\Component\DependencyInjection\ContainerInterface;
11

12
/**
13
 * Auto-generated Migration: Please modify to your needs!
14
 */
15
final class Version20230603113418 extends AbstractMigration implements ContainerAwareInterface
16
{
17
    /**
18
     * @var ContainerInterface
19
     */
20
    protected $container;
21

22
    /**
23
     * @param ContainerInterface|null $container
24
     */
25
    public function setContainer(ContainerInterface $container = null)
26
    {
27
        $this->container = $container;
28
    }
29

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

35
        $this->addSql('DROP VIEW IF EXISTS `v_commentators`');
36
    }
37

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

43
        $this->addSql('DROP VIEW IF EXISTS `v_commentators`');
44
    }
45

46
    /**
47
     * @param Schema $schema
48
     */
49
    public function postUp(Schema $schema): void
50
    {
51
        parent::postUp($schema);
52

53
        $sql = file_get_contents(__DIR__ . '/sql/view_commentators_02.sql');
54

55
        $em = $this->container->get('doctrine.orm.entity_manager');
56
        $stmt = $em->getConnection()->prepare($sql);
57
        $stmt->execute();
58

59
        $this->write('     <comment>-></comment> CREATE VIEW `v_commentators`');
60
    }
61

62
    /**
63
     * @param Schema $schema
64
     */
65
    public function postDown(Schema $schema): void
66
    {
67
        parent::postDown($schema);
68

69
        $sql = file_get_contents(__DIR__ . '/sql/view_commentators_01.sql');
70

71
        $em = $this->container->get('doctrine.orm.entity_manager');
72
        $stmt = $em->getConnection()->prepare($sql);
73
        $stmt->execute();
74

75
        $this->write('     <comment>-></comment> CREATE VIEW `v_commentators`');
76
    }
77
}
78

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.