Maandag 15 April 2013

primary key and foreign key



Kunci (Key)
Kunci merupakan elemen record yang dipakai untuk menemukan record tersebut pada waktu akses atau bisa digunakan untuk identifikasi tiap record.
Jenis-jenis kunci :
ü Superkey
ü Candidat key
ü Primary key
ü Alternate key
ü Foreign key
ü External key
Primary Key adalah atribut (field) yang dipilih untuk menentukan struktur storage pada organisasi file multi key, adapun key lainnya disebut dengan secondary key. Pengertian lainya Primary Key adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel. Nilai dari primary key adalah unik. pengertian lain
Primary key :Salah satu atrribut dari candidat key dapat dipilih menjadi primary key dengan 3 kriteria sbb :
  • Key tersebut lebih natural untuk dijadikan acuan
  • Key tersebut lebih sederhana
  • Key tersebut cukup uniqe
Foreign Key adalah Sebuah kumpulan field dalam satu relasi yang digunakan untuk me“refer” (menunjuk) ke suatu baris (tuple) pada relasi yang lain (harus berkorespondensi dengan primary key pada relasi yang kedua), seperti: ‘logical pointer’. Sedangkan hubungan antara keduanya (primary key dan foreign key) di jelaskan sebagai berikut,“Primary Key” adalah field kunci / utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang sama, atau dengan kata lain Primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).“Foreign key” adalah satu attribute yang melengkapi satu relationship yang menunjukan ke induknya, dengan kata lain keduanya saling berkaitan. pengertian lain ;
Foreign key : merupakan sembarang atribut yang menunjuk kepada primary key pada tabel lain.
  • Akan terjadi pada suatu relasi yang memiliki kardinalitas one to many atau many to many
§  Diperkuliahan dipertanyakan definisi dan perbedaan primary key, foreign key, unique dan index. Tapi seperti biasa saya cma bisa diam, diotak sih ada sesuatu tapi sulit untuk menyampaikannya, tapi hasil googling semakin meyakinkan pendapat saya.
§  Dalam database (mysql) dikenal beberapa istilah yaitu primary key, foreign key, unique dan index. Menurut Om Wiki, Primary Key atau Unique Key merupakan kunci yang secara unik mengidentifikasi baris pada tabel. Primary Key atau Unique Key dapat diterapkan pada satu atau lebih field. Apabila primary key / unique key diterapkan pada satu atau lebih field maka pada field tersebut tidak boleh bernilai sama untuk seluruh baris pada tabel. Kemudian yang membedakan primary key dan unique key adalah setiap kita memberikan constraint primary key pada field maka constraint NOT NULL akan diberikan pada field tersebut secara otomatis, sedangkan pada unique key tidak.
§  Selain kedua istilah diatas, terdapat juga istilah foreign key. Dengan adanya foreign key dapat terlihat adanya hubungan antara satu tabel dengan tabel lain. Foreign key mengidentifikasi satu atau lebih kolom pada satu tabel (tabel referensi) mengarah dari satu atau lebih tabel lainnya (tabel induk). Dengan adanya constraint foreign key pada satu kolom maka data pada kolom tabel referensi harus terdapat pada tabel induk. Pada mysql 5.0, foreign key hanya dapat diterapkan pada tabel dengan type InnoDB namun pada versi selanjutnya dapat diterapkan juga pada MyIsam. Kemudian field dengan tipe BLOB atau TEXT tidak dapat diberikan contraint foreign key.
Untuk mengoptimasi database kita dapat menggunakan index, karena index mampu meningkatkan kecepatan operasi pada suatu tabel (terutama operasi SELECT). Pada mysql, index dan data dari suatu tabel tersimpan secara terpisah, dengan kata lain membutuhkan ruang penyimpanan yang lebih banyak, kesalahan pemberian index pada suatu kolom dapat memperlambat operasi pada suatu tabel, karena index dibaca terlebih dahulu untuk mendapatkan data. Gunakan foreign key pada kolom yang sering digunakan untuk pencarian data.

Maandag 08 April 2013

MANIPULASI TABEL 3



MANIPULASI TABEL 3
1.SELECT STATEMENT DASAR
Perintah select adalah perintah yang digunakan untuk menampilkan data pada sebuah table.
Perintah dalam menampilkan data ada bermacam-macam tergantung kebutuhan kita dan ketentuan yang ingin kita buat.
  • Menampilkan seluruh isi table
               Pada query ketik : Select * from nama_tabel;
Symbol * digunakan jika kita ingin menampilkan  keseluruhan isi table.
Sebagai contoh:
               select * from barang;
2.SELECT WITH KOLOM
Menampilkan data table dengan field tertentu
               Pada query ketik : Select field1_tabel,field2_tabel from nama_tabel;
Field_tabel dituliskan sesuai dengan field yang ingin ditampilkan.

Sebagai contoh:
               select kode_barang,nama_barang from barang;
3.SELECT WITH WHERE KOLOM
Menampilkan data pada table dengan ketentuan data tertentu
               Pada query ketik : select * from nama_tabel where ketentuan;
Klausa where digunakan untuk memasukkan data dengan ketentuan “hanya untuk…” atau  ketentuan batasan.
Sebagai contoh:
Ditampilkan seluruh data pada table barang dengan ketentuan hanya untuk stock diatas 2.
                       select * from barang where stock>2;
4.SELECT WITH WHERE KOLOM AND
Berikut ini contoh lain dari menampilkan data dengan ketentuan tertentu. Dalam hal ini hanya ada dua atau lebih karakter  ketentuan, sehingga ditambahkan klausa and.
         select * from barang where stock>2 and satuan='Lusin';
                                                                                                                                                                                                                5.SELECT WITH WHERE KOLOM OR                                                                                                                                                                       Berikut ini contoh menampilkan data dengan ketentuan lebih dari satu dalm satu karakter. Digunakan klausa or.
 select * from barang where satuan='Lusin' or satuan='Box' or satuan='Pcs';
Atau dalam format lain menggunakan in. 
               select * from barang where satuan in ('Lusin','Box','Pcs');
6.SELECT WITH WHERE KOLOM BETWEEN
Berkut ini contoh menampilkan data dengan klausa where untuk ketentuan karakter.
  select * from barang where kode_barang like 'T%';
 atau
  select * from barang where left(kode_barang,1)='T';
        angka 1 menujukkan pada kolom berapa dilakukan seleksi
7.SELECT WITH WHERE KOLOM LIKE
BETWEEN menyederhanakan pencarian
SELECTKolom1, Kolom2 FROMtabel
WHEREkolom BETWEENnilai1 ANDnilai2
Cari Nama_kuliah yang mempunyai sks antara 1 sampai 3. Dengan menggunakan  BETWEEN maka bentuk query adalah :
Contoh :SELECTnama_kuliah FROMTabel_MK
WHERESKS BETWEEN1 AND3


Operator
Keterangan
=
Sama Dengan
<> 
Tidak Sama Dengan
Lebih Kecil Dari
<=
Lebih Kecil Sama Dengan
Lebih Besar
>=
Lebih Besar Sama Dengan

          Membaca data pegawai dari departemen 40 yang memiliki gaji dari 1000 sampai 2000 dollar
        SELECT * FROM emp WHERE sal BETWEEN 1000 AND 2000 AND deptno=40;


 SELECT (field1, field2, … ) FROM nama_table;
Query SELECT berfungsi untuk mengambil dan menampilkan data dalam kolom(field) pada suatu table.
Contoh:
SELECT judul, penulis, penerbit FROM buku;
Dan untuk melihat semua kolom(field) pada suatu table, digunakan perintah sebagai berikut:
SELECT * FROM nama_table;
Selain itu didalam query SELECT juga terdapat perintah untuk menyaring dan menampilkan data sesuai Kriteria tertentu, sintaksnya sebagai berikut:
SELECT (field1, field2, … ) FROM nama_table WHERE Kriteria; atau
SELECT (field1, field2, … ) FROM nama_table WHERE Kriteria LIKE ‘seperti ini’;
Contoh:
SELECT judul FROM buku WHERE jenis = ‘komik’;