Migration Üretecini (Migration Generator) Kullanarak MYSQL Veritabanında Tablo Oluşturmak

Migration Üreteci (Migration Generator)

Migration üretecini kullanarak yaratmis oldugumuz veritabaninda tablo olusturabiliriz.

Biraz not.. (Migration MySQL, PostgreSQL, SQLite, SQL Server, ve Oracle veritabani uygulamalarini desteklemektedir).

Migration Üretecinin Kurulumu (Install Migration Generator)

Üretec'i çalıştırmak:

ruby script/generate migration yenitablo
db/migrate/001_yenitablo.rb

Üretecimizi çalıştırdığımızda, bize oluşturduğumuz programın "db/migrate" klasörü içerisinde 001_yenitablo.rb adında bir dosya oluşturur.

Bu dosyanın kodlarını aşağıdaki kodlarla değiştirelim.

class Yenitablo < ActiveRecord::Migration 
    def self.up 
       # Bu sütunda tablo ismini oluşturuyoruz. 
      create_table :kullanicilar do |table| 
       # Sütun isimleri ve degerleri.. 
        table.column :ad, :string 
        table.column :soyad, :string 
        table.column :yas, :integer 
        table.column :kullaniciadi,  :string, :null => false 
        # Bu sütun MD5 hash içermektedir. 
Şifre sütununa 40 olarak limit belirlenmiştir.
Burayı istediğiniz gibi düzenleyebilirsiniz. table.column :sifre, :string, :limit => 40, :null => false table.column :eposta, :string end end def self.down drop_table :kullanicilar end end

Bundan sonraki tek yapmamız gereken şeyler, oluşturacağımız tablodaki sütunların değerleri

(Migration ile kullanabileceğimiz değerlerin adları şunlardan oluşmaktadır:

:primary_key, :string, :text, :integer, :float, :datetime,
:timestamp, :time, :date, :binary, :boolean)

001_yenitablo.rb dosyamızı düzenledikten sonra, yapmamız gereken şey, programımızın config klasörü içerisindeki, Veritabanı bağlantı dosyamız yani database.YML burada, kullanacağımız Veritabanı uygulamasının adını, veritabanı adını, kullanıcı adı ve şifremizi ayarlamamız yeterli..

ardından, komut satırımızdan "rake migrate" komutunu gönderiyoruz. ve komut satırında bize aşağıdaki şekilde yazı gönderiyor.

(in C:/program/migra) 
== Yenitablo: migrating ================================ 
-- create_table(:kullanicilar) 
   -> 0.0470s 
== Yenitablo: migrated (0.0630s) ======================= 

Böylece oluşturmak istediğimiz tablo migration tarafından yaratılmıştır.Yarattığımız tablonun oluşturulup oluşturulmadığına, manuel olarak veritabanından kontrol edebiliriz.

Other Articles:

 

Hiratech Design Studio :-)

Mr. Resul Gok
Hiratech Design Studio
http://www.hiratech.com

I love Ruby on Rails