MODUL 2 MEMBUAT TABEL, PRIMARY KEY, FORIGN KEY MENGGUNAKAN TRANSACT-SQL
Disusun oleh : Nama : JEPRI NIM : 2013081066 Kelas : TI 2013 C
LABORATORIUM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS KUNINGAN 2014 1
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
BAB I DASAR TEORI
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 merefer (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. Dalam konteks database relasional , kunci asing adalah kendala referensial antara dua tabel. Kunci asing adalah bidang dalam tabel relasional yang cocok dengan candidate key dari meja lain. Kunci asing dapat digunakan untuk referensi silang tabel. Sebagai contoh, katakanlah kita memiliki dua tabel, tabel PELANGGAN yang mencakup semua data pelanggan, dan meja PESANAN yang mencakup semua pesanan pelanggan. Maksud di sini adalah bahwa semua perintah harus dikaitkan dengan pelanggan yang sudah ada di tabel CUSTOMER. Untuk melakukan hal ini, kita akan menempatkan kunci asing dalam tabel ORDER dan memilikinya berhubungan dengan primary key dari tabel CUSTOMER. 2
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
Kunci asing mengidentifikasi kolom atau set kolom dalam satu (referensi atau anak) tabel yang mengacu pada kolom atau set kolom dalam tabel lain (direferensikan atau orang tua). Kolom dalam tabel anak harus referensi kolom dari primary key atau superkey pada tabel induk. Nilai-nilai dalam satu baris dari kolom referensi harus jatuh dalam satu baris dalam tabel induk. Dengan demikian, sebuah baris dalam tabel anak tidak dapat berisi nilai-nilai yang tidak ada dalam tabel induk (kecuali berpotensi NULL ). Dengan cara ini referensi dapat dibuat untuk menghubungkan informasi yang bersama-sama dan itu adalah bagian penting dari normalisasi database . Beberapa baris dalam tabel anak dapat merujuk ke baris yang sama di tabel induk. Sebagian besar waktu, itu mencerminkan satu (induk tabel atau meja direferensikan) ke banyak (tabel anak, atau referensi tabel) hubungan. Anak dan tabel induk mungkin meja yang sama, yaitu kunci asing mengacu kembali ke meja yang sama. Seperti kunci asing dikenal di SQL: 2003 sebagai referensi diri atau kunci asing rekursif. Sebuah tabel dapat memiliki beberapa kunci asing, dan setiap kunci asing dapat memiliki tabel induk yang berbeda. Setiap kunci asing diberlakukan secara independen oleh sistem database .Oleh karena itu, hubungan antara tabel Cascading dapat dibentuk dengan menggunakan kunci asing. Kunci asing yang tidak tepat / hubungan kunci primer atau tidak menegakkan hubungan tersebut sering menjadi sumber banyak database dan pemodelan data masalah
3
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
BAB II PRAKTIKUM DAN PEMBAHASAN
Membuat tabel buku database Perpustakaan dengan pembertian Primary key pada field Kode Buku. 1. Klik start lalu klik menu microsoft SQL Server 2. Kemudian pilih Enterprise manager, maka akan munycul tampilan jendela Enterprise manager seperti di bawah ini :
3. Klik nama database yang akan di buat table di dalamnya, misalnya kita akan membuat di database perpusatakaan, klik new, lalu klik table, maka akan muncu; dialog desain table seperti berikut :
4. Pada Colomn Name ,ketik nama fieldnya 5. Pada Data Type, pilih jenis data yang diinginkan 6. Pada Length, tentukan lebar fieldnya 7. Pada Allow Null, tentukan apakah field tersebut wajib diisi atau boleh kosong. 8. Ketikan struktur tabelnya sebagai berikut : 4
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
Tabel Buku Column Name Data Type Length Allow Null Kode_buku Char 10 Katalog Char 20 Judul_buku Char 50 Pengarang Char 25 Harga_buku Money 8 Foto_cover Memo 16 Ringkasan Varchar 50 Edisi Char 5
Buat Field Kode_Buku sebagai primary key dengan cara Pilih dan klik nama field yang ingin dijadikan primary key Klik kanan lalu pilih primary key Setelah di lakukan semua yang di perintahkan diatas, tampilan saat pemilihan primary key,seperti di bawah ini :
9. Setelah selesai, pada menu bar pilih File+Save/ klik (x), akan tampil dialog Save as. 10. Ketik nama tabelnya : BUKU, lalu klik OK. 11. Buka kembali file BUKU ,Tampilan seperti berikut
5
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
12. Sisipkan field baru yaitu (nama field : Pengarang, Data Type : Char, Field size, Length 25) Pilih posisi field yang akan disisipi, lali klik kanan pilih Insert Column. Pada baris kosong yang baru ditambahkan, definisikan field baru. 13. Hapus field Edisi Pilih posisi field yang akan di hapus lalu klik kanan dan pilih Delete Column 14. Simpan kembali table tersebut.
6
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
Membuat Tabel Mahasiswa pada Database AKADEMIK dengan pemberian Primary Key pada NIM Menggunakan TRANSACT-SQL. 1. Aktifkan Query Analyzer 2. Start All Programs Microsoft SQL Server Query Analyzer 3. Ketik Script berikut : USE AKADEMIK CREATE TABLE [MAHASISWA]( [NIM] [char](12)NOT NULL, [Nama] [char](12)NOT NULL, [Tmp_Lahir] [char](12)NOT NULL, [Tgl_Lahir] [char](12)NOT NULL, [JK] [char](12)NOT NULL, [Prodi] [char](12)NOT NULL, [Jenjang] [char](12)NOT NULL, [Agama] [char](12)NOT NULL, [Alamat] [char](12)NOT NULL, [Telpon] [char](12)NOT NULL, CONSTRAINT [Pk_MAHASISWA] PRIMARY KEY (NIM) ) 4. Test script dengan menekan tombol lalu aktifan dengan menekan tombol 5. Isi datanya akan tampil sebagai berikut :
6. Simpan Script SQL beri nama SQLJEPR_1 7. Buat table Mata Kuliah dengan Primary Key KODE_MK USE AKADEMIK CREATE TABLE [NILAI]( [KODE_MK][char](10)NOT NULL, [Nama_MK][char](30)NOT NULL, [SKS][char](20)NOT NULL, CONSTRAINT [PK_MKUL] PRIMARY KEY (KODE_MK) ) 7
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
8. Simpan dan beri nama SQLJEPRI_2 9. Buat tabel Nilai yang menyertakan NIM dan Kode_MK Foreign Key, Scriptnya sebagai berikut : USE AKADEMIK CREATE TABLE [NILAI]( [KODE_NIL][char](5)NOT NULL, [NIM][char](12)NOT NULL, [KODE_MK][char](10)NOT NULL, [UTS][int]NOT NULL, [UAS][int]NOT NULL, CONSTRAINT [PK_NILAI] PRIMARY KEY (KODE_NIL) CONSTRAINT [FK_NILAI_MKUL] FOREIGN KEY (KODE_MK)REFERENCES[MKUL](KODE_MK), CONSTRAINT [FK_NILAI_MAHASISWA] FOREIGN KEY (NIM)REFERENCES[MAHASISWA](NIM) ) 10. Test dan jalankan lalu simpan dan beri nama SQLNilai
8
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
BAB III TUGAS PRAKTIKUM 1. Apa Perbedaan Primary key dan Foreign key Perbedaan antara Primary key dan Foreign key adalah Primary key hanya di miliki hanya 1 data dalam 1 table, tetapi foreign key bisa beberapa data dalam 1 tabel. Lalu Primery key sering di sebut kunci utama dan Foreign key sering di sebut kunci tamu. 2. Buatlah Tabel-tabel pada Database PENGGAJIAN dengan menggunakan TRANSACT-SQL yang anda buat pada modul 1 Tabel Golongan dengan struktur table sebagai berikut : Field Tipe Ukuran Keterangan Gol Char 1 Harus disi TunjGol Money Harus disi Field GOL sebagai primary Key
Tabel Jabatan dengan struktur sebagai berikut : Field Tipe Ukuran Keterangan Jabatan Char 10 Harus diisi TunjJabatan Money Harus diisi TunjKeluarga Money Field JABATAN sebagai primary key
9
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
Tabel Pegawai dengan struktur table sebagai berikut : Field Tipe Ukuran Keterangan NIP Char 10 Harus diisi Nama Varchar 30 Harus diisi Alamat Varchar 30 Kota Varchar 20 Harus diisi TglLahir Datetime Harus diisi TmpLahir Varchar 20 Harus diisi TglMasuk Datetime Harus diisi TglKeluar Datetime Harus diisi Gol Char 1 Harus diisi Jabatan Char 10 Harus diisi StatusMenikah Char 1 Harus diisi JumlahAnak Int Harus diisi StatusAktif Char 1 Harus diisi GajiPokok Money Harus diisi Field NIP sebagai primary key
Tabel Absensi dengan struktur table sebagai berikut : Field Tipe Ukuran Keterangan TglAbsensi Datetime Harus diisi NIP Char 10 Harus diisi JamMasuk Datetime JamPulang Datetime Harus diisi
10
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
Jadikan field TglAbsensi sebagai Primary Key
Tabel TidakMasuk dengan struktur table sebagai berikut Field Tipe Ukuran Keterangan Tanggal Datetime Harus diisi NIP Char 10 Harus diisi Alasan Varchar Status Char Harus diisi Field NIP dan Tanggal sebagai primary key
11
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
3. Modifikasi table ABSENSI dan jadikan field NIP menjadi referensi foreign key dari field NIP di table PEGAWAI.
4. Modifikasi table PEGAWAI dan jadikan GOL terhubung ke field Gol yang terdapat di table Golongan dan sekaligus menghubungkan field jabatan yang berada di table jabatan
5. Modifikasi table TIDAKMASUK dan jadikan field NIP yang ada table PEGAWAI.
12
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C
BAB IV KESIMPULAN
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 merefer (menunjuk) ke suatu baris (tuple) pada relasi yang lain (harus berkorespondensi dengan primary key pada relasi yang kedua), seperti: logical pointer. Primary key tidak bisa menjadi primary key table lain hanya untuk satu table tetapi foreign bisa menjadi kunci tamu table lain.
13
LAPORAN PRAKTIKUM SISTEM TEKNOLOGI BASIS DATA MODUL 2 JEPRI TI 2013 C