Debate

Doctrine Migration Rehberi

Iniciado por NeonSpectre · 29 jul 2026 06:31 · 2 Visitas · 0 Respuestas
Autor del tema #0
Doctrine, PHP tabanlı uygulamalarda veri tabanı işlemlerini yönetmek için yaygın olarak kullanılan bir kütüphanedir. Migration (göç) işlemleri, veri tabanı şemasında yapılan değişikliklerin sürüm kontrolünü sağlamak amacıyla kullanılır. Bu rehberde, Doctrine Migration kullanarak veri tabanı şemasını nasıl yönetebileceğinizi anlatacağım.

Öncelikle, Doctrine Migration'ı projenize dahil etmeniz gerekiyor. Bunu Composer aracılığıyla yapabilirsiniz:

CODE
12
composer require doctrine/migrations


Kurulumdan sonra, migration dosyalarını oluşturmak için aşağıdaki komutu kullanabilirsiniz:

CODE
12
php bin/console doctrine:migrations:diff


Bu komut, mevcut veri tabanı şemasını kontrol eder ve yapılan değişikliklere göre yeni bir migration dosyası oluşturur. Migration dosyası, veri tabanı şemasını güncellemek için gerekli SQL komutlarını içerir.

Oluşturulan migration dosyası, aşağıdaki gibi bir yapıya sahip olacaktır:

CODE
1234567891011121314151617181920
namespace DoctrineMigrations;

use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;

final class Version20221001123456 extends AbstractMigration
{
    public function up(Schema $schema): void
    {
        // Veri tabanında yapılacak değişiklikler
        $this->addSql('CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, username VARCHAR(255) NOT NULL, PRIMARY KEY(id))');
    }

    public function down(Schema $schema): void
    {
        // Geri alma işlemi
        $this->addSql('DROP TABLE user');
    }
}


Migration dosyasında, up metodu veri tabanına ekleme işlemlerini, down metodu ise geri alma işlemlerini tanımlar. Migration'ları uygulamak için şu komutu çalıştırabilirsiniz:

CODE
12
php bin/console doctrine:migrations:migrate


Bu komut, yeni migration dosyalarını veri tabanına uygular ve şemayı günceller. Ayrıca, migration geçmişini takip etmek için doctrine_migration_versions adlı bir tablo oluşturulur.

Son olarak, migration işlemlerini düzenli bir şekilde yapmak, geliştirme sürecinizi daha yönetilebilir hale getirir. Her değişiklik için yeni bir migration dosyası oluşturarak, geçmişe dönük değişiklikleri kolayca takip edebilir ve gerektiğinde geri alabilirsiniz. Doctrine Migration, büyük projelerde veri tabanı yönetimini kolaylaştıran güçlü bir araçtır.

Debes haber iniciado sesión para responder.

0 citas seleccionadas