Monday 16 September 2013

Laporan Praktikum STBD Modul 2


LAPORAN PRAKTIKUM
SISTEM DAN TEKNOLOGI BASIS DATA
MODUL 2
“MEMBUAT TABLE, PRIMARY KEY,
FOREIGN KEY MENGGUNAKAN TRANSACT-SQL”





Disusun oleh :
Nama          :  Ricky Rudianto
NIM                        :  2012081127
Kelas           :  Teknik Informatika A


LABORATORIUM KOMPUTER
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
2013
I.              LANDASAN TEORI

SQL (Structured Query Language) adalah salah satu bahasa generasi level ke-4 yang awalnya dikembangkan oleh IBM. Berbeda dengan bahasa pemrograman level ke-3, SQL adalah bahasa yang bersifat request oriented dan bersifar non-prosedural sehingga lebih mudah untuk dipelajari karena sintaksis yang digunakan hampir menyerupai bahasa yang digunakan oleh manusia untuk berkomunikasi. Oleh karena itu, SQL lebih fleksibel dalam penggunaannya. Selain itu, SQL juga bersifat non case sensitif. Banyak vendor pembuat DBMS (Database Management System)yang saat ini menggunakan SQL sebagai standarisasi sebagai produk mereka, seperti ORACLE, Microsoft SQL Server, PostGreSQL, dan MySQL.
SQL sendiri terbagi atas menjadi beberapa bagian, yaitu :
2 bagian utama SQL yaitu :
·         DDL (Data Definition Language)
Yaitu bahasa yang memiliki kemampuan untuk mendefinisikan data yang berhubungan dengan pembuatan dan penghapusan objek seperti tabel, indeks, bahkan basis datanya sendiri.
Misalnya :
-          CREATE TABLE : Membuat tabel
-          CREATE INDEX : Membuat indeks
-          ALTER TABLE : Mengubah struktur tabel
-          DROP TABLE : Menghapus tabel
-          DROP INDEX : Menghapus indeks
-          GRANT : Memberikan hak akses
-          REVOKE : Menghapus hak askes
·         DML (Data Manipulation Language)
Yaitu bahasa yang berhubungan dengan proses manipulasi data pada tabel, record.
Misalnya :
-          SELECT : Menampilkan record dari tabel atau view
-          INSERT : Menyisipkan record ke dalam tabel
-          UPDATE : Menghapus record dari tabel
-          COMMIT : Menuliskan perubahan ke dalam disk
-          ROLLBACK : Membatalkan perubahan yang dilakukan setelah perintah COMMIT terakhir

Berikut beberapa perintah dan fungsi yang sering digunakan didalam Transact-SQL :
1.      CREATE DATABASE : Membuat database
2.      ALTER DATABASE : Mengubah database
3.      DROP DATABASE : Membuat database
4.      CREATE TABLE : Membuat tabel
5.      ALTER TABLE : Mengubah struktur tabel
6.      DROP TABLE : Menghapus tabel
7.      CREATE VIEW : Membuat view
8.      ALTER VIEW : Menghapus view
9.      DROP VIEW : Menghapus view
10.  CREATE PROCEDURE : Membuat stored prosedure
11.  ALTER PROCEDURE : Mengubah stored prsedure
12.  DROP PROCEDURE : Menghapus stored prosedure
13.  CREATE TRIGGER : Membuat trigger
14.  ALTER TRIGGER : Membuat trigger
15.  DROP TRIGGER : Menghapus trigger
16.  CREATE INDEX : Membuat indeks
17.  DROP INDEX : Mengubah indeks
18.  SELECT : Menampilkan data dari tabel
19.  COMMIT : Menuliskan perubahan kedalam disk
20.  ROLLBACK : Membatalkan perubahan yang dilakukan setelah perintah COMMIT yang terakhir



II.           PRAKTIKUM DAN PEMBAHASAN

A.      Membuat Tabel Buku pada Database PERPUSTAKAAN dengan pemberian Primary Key pada Field Kode Buku :
Langkah-langkahnya :
1.      Klik Start à klik Menu Microsoft SQL Server.
2.      Pilih Enterprise Manager, lalu klik, maka akan muncul tampilan jendela Enterprise Manager seperti pada gambar 1.1.
Gambar 1.1
3.      Klik nama database yang akan dibuat tabel didalamnya lalu klik kanan seperti pada gambar 1.2.
Gambar 1.2
4.       pilih New à Table, maka akan muncul dialog design table tersebut. (lihat gambar 1.3)
Gambar 1.3
5.      Pada Column Name, ketik nama fieldnya.
6.      Pada Data Type, pilih jenis data yang diinginkan.
7.      Pada Lenght, tentukan lebar fieldnya.
8.      Pada Allow Null, tentukan apakah field tersebut wajib diisi atau boleh kosong.


9.      Ketikan struktur tabelnya sebagai berikut :
     Tabel Buku
Column Name
Data Type
Lenght
Allow Null
Kode_Buku
Char
10
Katalog
Char
20
Judul_Buku
Char
50
Harga_Buku
Money
8
Foto_Cover
Image
16

Ringkasan
Varchar
50

Edisi
Char
5


10.  Pada gambar 1.3, lalu kita masukan data tabel buku yang diatas, maka hasilnya seperti pada gambar 1.4, yaitu :
Gambar 1.4
Keterangan :
Ø  Buat field Kode_Buku sebagai Primary Key dengan cara :
Ø  Pilih dan klik nama field yang ingin dijadikan primary key
Ø  Klik kanan lalu pilih Set Primary Key(lihat gambar 1.5)
Gambar 1.5
Maka disamping Kode_Buku akan ada tanda             , hasilnya : (lihat gambar 1.6)
Gambar 1.6
11.  Setelah selesai, pada menu bar pilih File à Save / klik (X), akan tampil dialog Save As.
12.  Ketik nama tabelnya : BUKU, lalu klik OK.
13.  Buka kembali file BUKU.
14.  Sisipkan field baru yaitu (Column Name : Pengarang, Data Type : Char, Lenght : 25, Allow Null : √)
Ø  Pilih posisi field yang akan disisipi, lalu klik kanan dan Insert Column(lihat gambar 1.7)
Ø  Pada baris kosong yang baru ditambahkan, definisi field baru.

Gambar 1.7
15.  Hapus field edisi.
Ø  Pilih posisi field yang akan dihapus lalu klik kanan dan pilih Delete Column
16.  Simpan kembali tabel tersebut.

B.       Membuat Tabel Mahasiswa pada Database AKADEMIK dengan pemberian Primary Key pada NIM menggunakan Transact SQL
Langkah-langkahnya :
1.      Aktifkan Query Anlayzer.
2.      Start à All Programs à Microsoft SQL Server à Query Analizer.
3.      Atau bisa jg dengan langkah sebagai berikut :
Ø  Start à All Programs à Microsoft SQL Server à Enterprise Manager, maka muncul jendela SQL Server Enterprise Manager
Ø  Setelah itu buka Database klik di salah satu database tersebut
Ø  Kemudian pilih Tool à SQL Query Analyzer (lihat Gambar 1.8)
Gambar 1.8
4.      Maka akan muncul jendela SQL Query Analyzer seperti pada gambar 1.9.
Gambar 1.9
5.      Ketikan Script berikut :
USE AKADEMIK
CREATE TABLE [MAHASISWA](
            [NIM]                          [char](12) NOT NULL,
            [Nama]                        [char](25) NOT NULL,
            [Tempat_Lahir]           [char](12) NOT NULL,
            [Tanggal_Lahir]          [datetime] NOT NULL,
            [Jenis_Kelamin]          [char](10) NOT NULL,
            [Prodi]                         [char](25) NOT NULL,
            [Jenjang]                      [char](7) NOT NULL,
            [Agama]                      [char](10) NOT NULL,
            [Alamat]                      [char](25) NOT NULL,
            [Telepon]`                    [char](12) NOT NULL,
CONTRAINT [Pk_MAHASISWA] PRIMARY KEY (NIM)
)
6.      Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
7.      Isi datanya seperti pada gambar 1.10 berikut :
Gambar 1.10
8.      Simpan script SQL beri nama SQLMahasiswa.
9.      Buatlah tabel Mata Kuliah dengan Primary Key KODE_MK
USE AKADEMIK
CREATE TABLE [MKUL](
            [KODE_MK]              [char](10) NOT NULL,
            [Nama_MK]                [char](30) NOT NULL,
            [SKS]                          [char](20) NOT NULL,
CONSTRAINT [Pk_MKUL] PRIMARY KEY (KODE_MK)
)
10.  Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
11.  Isi datanya seperti pada gambar 2.1 berikut :
Gambar 2.1
12.  Simpan script SQL beri nama SQLMKUL.
13.  Buat tabel nilai yang menyertakan NIM dan Kode_MK sebagai 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)
)
14.  Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
15.  Isi datanya seperti pada gambar 2.2 berikut :
Gambar 2.2




III.        PERTANYAAN DAN TUGAS PRAKTIKUM

1.      Apa perbedaan Primary Key dan Foreign Key
2.      Buatlah tabel-tabel pada database PENGGAJIAN dengan menggunakan TRANSACT-SQL yang Anda buat pada modul 1 :
·           Tabel Golongan dengan struktur tabel sebagai berikut :
Field
Tipe
Ukuran
Keterangan
Gol
char
1
Harus diisi
TunjGol
money

Harus diisi
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
·           Tabel Pegawai dengan dtruktur 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 tabel sebagai berikut :
Field
Tipe
Ukuran
Keterangan
TglAbsensi
datetime

Harus diisi
NIP
char
10
Harus diisi
JamMasuk
varchar

Harus diisi
JamPulang
char

Harus diisi
Field TglAbsensi dan NIP sebagai Primary Key
·           Tanggal TidakMasuk dengan struktur tabel sebagai berikut :
Field
Tipe
Ukuran
Keterangan
Tanggal
datetime

Harus diisi
NIP
char
10
Harus diisi
Alasan
varchar

Harus diisi
Status
char

Harus diisi
Field Tanggal dan NIP sebagai Primary Key
3.      Modifikasi tabel ABSENSI dan jadikan field NIP menjadi referensi Foreign Key dari field NIP dari tabel PEGAWAI.
4.      Modifikasi tabel PEGAWAI dan jadikan field GOL terhubung ke field Gol yang terdapat ditabel Golongan dan sekaligus menghubungkan field jabatan yang berada ditabel jabatan.
5.      Modifikasi tabel TIDAKMASUK dan jadikan field NIP terhubung ke field NIP yang berada ditabel PEGAWAI.






Tugas No. 1
Primary Key : Membuat kata kunci primer atau kunci utama dari sebuah tabel, kolom atau kombinasi dari kolom dengan nilai yang harus bersifat eksekutif didalam tabel untuk mengenali baris.
Foreign Key : Menentukan hubungan antara tabel-tabel.

Tugas No. 2
Langkah-langkahnya :
1.      Aktifkan Query Analyzer.
2.      Start à All Programs à Microsoft SQL Server à Query Analizer.
3.      Atau bisa jg dengan langkah sebagai berikut :
Ø  Start à All Programs à Microsoft SQL Server à Enterprise Manager, maka muncul jendela SQL Server Enterprise Manager
Ø  Setelah itu buka Database klik di salah satu database tersebut
Ø  Kemudian pilih Tool à SQL Query Analyzer (lihat Gambar 2.3)
Gambar 2.3
4.      Membuat tabel Golongan dengan TRANSACT-SQL
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [GOLONGAN](
                 [Gol]                [char](1) NOT NULL,
                 [TunjGol]        [money] NOT NULL,
CONSTRAINT [Pk_GOLONGAN] PRIMARY KEY (Gol)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.4 berikut :
Gambar 2.4
·           Simpan dan beri nama SQLGolongan
5.      Membuat tabel JABATAN dengan menggunakan TRANSACT-SQL
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [JABATAN](
                 [Jabatan]                      [char](10) NOT NULL,
                 [TunjJabatan]              [money] NOT NULL,
                 [TunjKeluarga]            [money] NOT NULL,
CONSTRAINT [Pk_JABATAN] PRIMARY KEY (Jabatan)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.5 berikut :

Gambar 2.5
·           Simpan dan beri nama SQLJabatan.
6.      Membuat tabel PEGAWAI dengan menggunakan TRANSACT-SQL
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [PEGAWAI](
                 [NIP]                           [char](10) NOT NULL,
                 [Nama]                        [varchar](30) NOT NULL,
                 [Alamat]                      [varchar](30) NOT NULL,
                 [Kota]                          [varchar](20) NOT NULL,
                 [TglLahir]                    [datetime] NOT NULL,
                 [TmptLahir]                 [varchar](20) NOT NULL,
                 [TglMasuk]                  [datetime] NOT NULL,
                 [TglKeluar]                  [datetime] NOT NULL,
                 [Gol]                            [char](1) NOT NULL,
                 [Jabatan]                      [char](10) NOT NULL,
                 [StatusMenikah]          [char](1) NOT NULL,
                 [JumlahAnak]              [int] NOT NULL,
                 [StatusAktif]               [char](1) NOT NULL,
                 [GajiPokok]                 [money] NOT NULL,
CONSTRAINT [Pk_PEGAWAI] PRIMARY KEY (NIP)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.6 berikut :
Gambar 2.6
7.      Membuat tabel ABSENSI dengan menggunakan TRANSACT SQL
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [ABSENSI](
                 [TglAbsensi]                [datetime] NOT NULL,
                 [NIP]                           [char](10) NOT NULL,
                 [JamMasuk]                 [datetime] NOT NULL,
                 [JamPulang]                [datetime] NOT NULL,
CONSTRAINT [Pk_ABSENSI] PRIMARY KEY (TglAbsensi,NIP)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.7 berikut :
Gambar 2.7
8.      Membuat tabel TIDAK MASUK dengan menggunakan TRANSACT SQL
·         Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [TIDAK_MASUK](
                        [Tanggal]                     [datetime] NOT NULL,
                        [NIP]                           [char](10) NOT NULL,
                        [Alasan]                       [varchar] NOT NULL,
                        [Status]                        [char] NOT NULL,
CONSTRAINT [Pk_TIDAK_MASUK] PRIMARY KEY (Tanggal, NIP)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.8 berikut :
Gambar 2.8
Tugas No. 3
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [ABPEG](
                 [KODE_ABPEG]                   [char](5) NOT NULL,
                 [NIP]                                       [char](10) NOT NULL,
                 [JamMasuk]                             [datetime] NOT NULL,
                 [JamKeluar]                             [datetime] NOT NULL,
CONSTRAINT [Pk_ABPEG] PRIMARY KEY [KODE_ABPEG]
CONSTRAINT [FK_ABPEG_ABSENSI] FOREIGN KEY (KODE_ABPEG) REFERENCES (ABSENSI)(NIP),
CONSTRAINT [FK_ABPEG_PEGAWAI] FOREIGN KEY (KODE_ABPEG) REFERENCES (PEGAWAI)(NIP)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.9 berikut :
Gambar 2.9

Tugas No.4
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [PegGolJab](
                 [KODE_PegGol]                    [char](5) NOT NULL,
                 [Nama]                                    [varchar](30) NOT NULL,
                 [Alamat]                                  [varchar](30) NOT NULL,
                 [Jabatan]                                  [char](10) NOT NULL,
                 [Gol]                                        [char](1) NOT NULL,
                 [TunjGol]                                [money] NOT NULL,
CONSTRAINT [Pk_PegGol] PRIMARY KEY (KODE_PegGol)
CONSTRAINT [Fk_PegGol_PEGAWAI] FOREIGN KEY (KODE_PegGol) REFERENCES (PEGAWAI)(Gol),
CONSTRAINT [Fk_PegGol_GOLONGAN] FOREIGN KEY (KODE_PegGol) REFERENCES (GOLONGAN)(Gol),
CONSTRAINT [Fk_PegGol_JABATAN] FOREIGN KEY (KODE_PegGol) REFERENCES (JABATAN)(Jabatan),
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 2.10 berikut :
Gambar 2.10

Tugas No. 5
·           Ketik script berikut :
USE PENGGAJIAN
CREATE TABLE [TIDPEG](
                 [KODE_TIDPEG]      [char](5) NOT NULL,
                 [Tanggal]                     [datetime] NOT NULL,
                 [Nama]                        [varchar](30) NOT NULL,
                 [NIP]                           [char](10) NOT NULL,
                 [Alasan]                       [varchar] NOT NULL,
                 [Status]                        [char] NOT NULL,
CONSTRAINT [Pk_PegGol] PRIMARY KEY (KODE_PegGol)
CONSTRAINT [Fk_PegGol_TIDAK_MASUK] FOREIGN KEY (KODE_TIDPEG) REFERENCES (TIDAK_MASUK)(NIP),
CONSTRAINT [Fk_PegGol_PEGAWAI] FOREIGN KEY (KODE_TIDPEG) REFERENCES (PEGAWAI)(NIP)
)
·           Test script dengan menekan tombol √ lalu aktifkan dengan menekan .
·           Isi datanya seperti pada gambar 3.1 berikut :
Gambar 3.1










IV.        KESIMPULAN
Pada pembuatan laporan praktikum ini saya melakukan observasi atau penelitian maupun analisis yaitu pada saat latihan praktikum maupun pada saat tugas praktikum dengan kendala yang sering saya temukan pada saat saya membuat FOREIGN KEY di praktikum maupun tugas praktikum.
DDL (Data Definition Language) yaitu bahasa yang memiliki kemampuan untuk mendefinisikan data yang berhubungan dengan pembuatan dan penghapusan objek seperti tabel, indeks, bahkan basis datanya sendiri. Sedangkan DML (Data Manipulation Language) yaitu bahasa yang berhubungan dengan proses manipulasi data pada tabel, record.
Primary Key : Membuat kata kunci primer atau kunci utama dari sebuah tabel, kolom atau kombinasi dari kolom dengan nilai yang harus bersifat eksekutif didalam tabel untuk mengenali baris. Sedangkan Foreign Key : Menentukan hubungan antara tabel-tabel.

V.           DAFTAR PUSTAKA
Modul Praktikum Sistem dan Teknologi Basis Data

No comments:

Post a Comment