17 Eki, 2015 ·

Laravel 5 – Database oluşturma ve silme işlemleri

Laravelde bize database işlemlerini Migration ile yapma kolaylığı sunuyor.

Migration tek komutla database oluşturup silme gibi işlemlerin yanı sıra, versiyon kayıt sistemi ile en son hangi işlemin yapıldığını göstermesi takım çalışmalarında önemli rol oynuyor.

Anlatıma geçmeden önce kısaca yol haritasından bahsedeyim.

1. komut satırı ile tablo oluşturacağız.
2. oluşturduğumuz tablo için sütun bilgilerini php dosyamızda belirteceğiz
3. daha sonra komut ile yaptığımız işlemlerin veritabanına gönderilmesini sağlayacağız.

Migration ile Tablo oluşturma

Bunun için komut satırında projenizin bulunduğu dizinde şu komutu çalıştırıyoruz

php artisan migrate:make create_users_table

bu komut ile users tablosu oluştuyoruz.

Burda dikkat etmeniz gereken nokta, değişken kısım sadece users bölümü.

create_comments_table -> comments isimli tablo oluşturur
create_posts_table -> posts isimli tablo oluşturur

Diğer önemli bir nokta ise tablo adını sadece çoğul kullanabilirsiniz. tekil değil.

Komutu çalıştırdıktan sonra tablo içini doldurmak için gerekli sütun bilgilerini girelim.

Bunun için laravel projemizde database>migration klasörüne oluşturulan migration dosyamızı açıyoruz.

Bu dosya içinde bulunan iki fonksiyon göreceksiniz.

up fonksiyonu -> database oluşturma durumunda girilecek kodları içeriyor
down fonksiyonu -> database silme durumunda girilecek kodları içeriyor

Up fonksiyonun içinde zaten hali hazırda ID ve TIMESTAMP sütunlarının oluşturulduğunu görebilirsiniz.

Diğer sütunlarıda aynı şablona göre oluşturabilirsiniz.

Mesela text(string) veri türünde 200 limitli bir title sütunu oluşturalım.


$d->string('title', 200);

Veri türlerine http://laravel.com/docs/4.2/schema buradan ulaşabilirsiniz.

Oluşturduğumuz tablo ve sütunu veritabanına aktarmak için

php artisan migration

komutunu uyguluyoruz. Artık sütun ve tabloları phpmyadmin’e girdiğinizde görebilirsiniz.

eğer geri almak isterseniz

php artisan migrate:rollback

komutunu uygulayıp tablo ve sütunları silebilirsiniz.

Laravel Database Migration Laravel Migration nedir