2014-04-04

pelajaran 2 : Membuat table cepat

Pada pelajaran sebelumnya kita sudah membuat 1 table dengan penjelasan singkat. Berikut ini akan menjelaskan beberapa rule yang mungkin dapat dipertimbangkan untuk digunakan. Pertama rule tipe data yang akan berguna di hari depannya. Point awal memilih tipe data ini karena mencegah kemungkinan terburuk yang terjadi. Tanpa banyak menunda mari bahas dari tipe data pertama yaitu angka.

ANGKA


disini maksudnya number adalah integer,float dan yang berhubungan dengan angka
dapat dilihat disini ada double, float, integer,numeric. Melihat sekilas tampaknya numeric sama seperti float! Namun untuk belajar, saya sarankan memakai selain numeric. Tetapi bila sudah pernah memakai dan tidak mau terlalu direpotkan saya sarankan numeric.

Numeric digunakan bila data yang di input adalah

  • data yang akan di hitung
  • data yang bisa di hitung
  • data yang berhubungan dengan jumlah
  • data yang bukan berhubungan dengan id/kode
Tentunya ada pertanyaan!? apa itu integer(autoInc). Tipe itu digunakan untuk kode/no urut. Saya menyarankan untuk setiap table memiliki id tersebut! 

SETIAP TABLE PUNYA ID dan STAT

bukan pilihan terbaik, karena bila kamu memiliki data yang boros dan ternyata ID tersebut tidak terpakai karena lain hal. Saya menyarankan untuk melakukan evaluasi bagaimana struktur table kamu. Dari saya pribadi lebih baik ada ID, karena ini berhubungan dengan penghapusan data. 
Bagaimana dengan status/stat ? ini sebagai pengganti delete! dimana kamu ingin database kamu tidak ada delete hanya pergantian status! maka ini adalah solusi terbaik! karena bila di hapus ! sama aja data yg dihapus ditempati yang baru.
Untuk ID saya menyarankan memakai integer (autoInc)! Tetapi bagaimana kalau id yang di program maunya bukan angka berurut! tetapi angka yang mewakili sesuatu! bila hal tersebut yang akan kamu gunakan, maka jangan sebut sebagai id tetapi kode! karena kode dasarnya bukan sesuatu yang dihitung (walau ada berhubungan ama jumlah). saya sarankan kode memakai char/varchar dan memanjangkan lebarnya. Walau kode bernilai sebagai angka tetapi hindari membuat dia sebagai angka!

TANGGAL

untuk tanggal kamu dapat menggunakan date atau datetime! jangan lupa input sesuai formatnya. Format yang disarankan 
tahun-bulan-hari

TEXT

salah satu data yang paling primitif adalah huruf,string atau text. pertama kita harus tentukan dahulu sepanjang apa hurufnya. Bila kita tidak tahu berapa panjangnya maka pilihan Memo adalah jawabannya. Memo sama seperti text dalam database lain. Namun jangan menggunakan memo kecuali km yakin atas keputusanmu. Kita ambil contoh nama, kita tak tahu sepanjang apa nama itu, tetapi kita tahu tidak ada nama yang sepanjang 100! Walaupun kalau dicari malah ada yang sampai 200!
Apabila kita memiliki data yang panjangnya tidak selalu sama seperti nama, gunakan varchar daripada char! Character/char adalah tipe data yang memiliki panjang data statis dan akan lebih efektif bila panjangnya tetap sama seperti 10 bukan berubah2.
Kita memang tidak menduga kedepannya, tetapi sebenarnya urusan database sendiri tidak serumit yang kujelaskan diatas ini, tetapi jauh lebih rumit karena harus berhubungan ama table lain.

HUBUNGAN AMA TABLE LAIN

sebuah database tidak berdiri sendiri, dia memiliki keterkaitan ama table lain. Terkadang table lain adalah detail dari table yang digunaknan saat ini. Sebagai contoh kamu memisahkan table pekerja dengan detailnya dengan alasan agar cepat loading!
Namun ada 3 hal yang perlu diketahui saat menghubungkan dengan table lain
  • kode yang digunakan sama seperti kode pada table lain
  • usahakan kode sudah memiliki format yang tepat bukan random. Bila sulit gunakan id/angka untuk melakukan keterhubungan
  • beri nama yang membuat anda tahu kemana table itu di hubungkan! nama kembar dari beda table tidak akan mempermudah coding.
Untuk membuat table cepat, kita dapat memakai wizard. Tekan dahulu membuat tale lalu pilih table wizard
pilih dan kamu akan dapatkan berikut
pilih sample yang kamu inginkan maka otomatis tengah akan terisi tablenya, klik panah kanan (1) untuk menambah ke table yg akan kamu buat. Atau pilih panah dibawahnya bila ingin memasukkan semua
lanjutkan dengan next dan ikuti step berikutnya sampai kamu berhasil membuat primay key dan pilih dari ID yg kamu masukkan. Sisanya seperti tipe sudah dijelaskan di atas, untuk penamaan akan dibahas kemudian. 
Berikut adalah pandangan saya tentang 

Stand alone vs Table below database

SA (stand alone) table adalah table yang berdiri sendiri. biasanya saya tidak rekomendasikan ini, tetapi bila berhubungan ama orang luar, maka model SA di anjurkan. Namun lebih baik dibawah database. Ini masalah kerapian saja.

NAMA TABLE

tidak ada teori bagus untuk penamaan field dan table, tetapi pikirkan 3 hal sebelum memberi nama
  1. orang lain ngerti dengan table kita
  2. orang lain faham cara kerja table kita
  3. kita tidak kesulitan bila disuruh edit beberapa waktu kemudian.
Saran yang bisa diberikan
  • nama jelas
  • primay key seharusnya id / angka. bila harus kode maka jadikan kode sebagai kode unik
  • berikan prefix bila kamu tidak ingin ada kesalahan seperti {nama db}_{tnama table}

Tidak ada komentar: