Laravel part 6 - Migration
Mencipta table student menggunakan migration. Migration ialah pembinaan database yang boleh di rollback dan ala-ala github gitu tetapi dalam bentuk database.php artisan make:migration create_students_table
Created Migration: 2019_10_17_141304_create_students_table
Boleh rujuk di:
https://laravel.com/docs/5.8/migrations
Secara default didalam file create_students_table akan mengandungi id dan timestamps:
public function up()
{
Schema::create('students', function (Blueprint $table) {
$table->bigIncrements('id');
$table->timestamps();
});
}
Kita akan buat penambahan didalam table ini. Untuk dokumentasi cara bina dan jenis-jenis type data boleh lihat di: https://laravel.com/docs/5.8/migrations#creating-columns
Kita ingin menambah column nama, no ic, email dan major ke celah-celah diantgara id dan timestamps.
public function up()
{
Schema::create('students', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('nama');
$table->char('noic',15)->unique();
$table->string('email')->unique();
$table->string('major');
$table->timestamps();
});
}
kemudian, pergi ke terminal untuk migrate script ini dan run:
php artisan migrate
jika kita tengok, selain script create_students_table, terdapat dua lagi script yang dirun, itu adalah file default yang kita boleh delete dari folder database di dalam laravel.
manakala terdapat table pelajar, yang kita gunakan semasa laravel part 5. Ianya adalah yang asal dicipta menggunakan mysql dan bukan migrate.
Untuk undo semua script migration:
php aritsan migrate:rollback
Namun bagi file pelajar yang kita bina menggunakan mysql, ianya tidak rollback kerana script tersebut tiada didalam folder database dalam laravel
Jom kita melihat struktur data di dalam pelajar
Sekarang tambah 4 data untuk kita test. Table students tersebut sebenarnya sama sahaja data & datatype yang telah kita bina di tutorial ke 6 tempoh hari. Jadi kita boleh menukar table dari pelajardb kepada students di PelajarController untuk melihat hasilnya
class PelajarController extends Controller
{
public function index()
{
$pelajar = DB::table('students')->get();
return view('pelajar.index',['pelajar'=>$pelajar]);
}
}
hasilnya:
Alhamdulillah. Siap bina database menggunakan migration. Sekarang kita akan membina model pula. Sila ke pelajaran seterusnya.





