Program Sistem Informasi Perpustakaan

21
LAPORAN PRAKTIKUM BASIS DATA Disusun Oleh: Nama : Muhammad Fauzi Nim : 090170045 Unit : A/T.Informatika FAKULTAS TEKNIK PRODI TEKNIK INFORMATIKA UNIVERSITAS MALIKUSSALEH

Transcript of Program Sistem Informasi Perpustakaan

Page 1: Program Sistem Informasi Perpustakaan

LAPORAN PRAKTIKUM

BASIS DATA

Disusun Oleh:

Nama : Muhammad Fauzi

Nim : 090170045

Unit : A/T.Informatika

FAKULTAS TEKNIK

PRODI TEKNIK INFORMATIKA

UNIVERSITAS MALIKUSSALEH

TAHUN AJARAN 2010

Page 2: Program Sistem Informasi Perpustakaan

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.

Istilah "basis data" berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika.

Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.

Istilah basis data mengacu pada koleksi dari data-data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut.

1.2 Tujuan PratikumMempelajari cara pembuatan databaseMengetahui langkah-langkah dalam pembuatan databaseMembuat database dengan manggunakan SQL

1.3 Manfaat PratikumDapat mengetahui cara pembuatan databaseDapat membuat database dengan menggunakan SQL

Page 3: Program Sistem Informasi Perpustakaan

BAB II

TEORI DATA

2.1 Data Base

2.1.1 Alasan Perlunya Database

Basis data merupakan salah satu komponen penting dalam system informasi, karena merupakan dasar dalam menyediakan informasi.

Basis data menentukan kualitas informasi : akurat, tepat pada waktunya dan relevan. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.

Basis data mengurangi duplikasi data (data redudancy). Dengan mengaplikasikan basis data hubungan data dapat ditingkatkan. Basis data dapat mengurangi pemborosan tempat simpanan luar.

2.1.2 Bahasa Basis Data

Bahasa basis data terdiri atas:

Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek-objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau sekunder.

Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan menghapusnya atau hanya sekedar menampilkannya kembali.

2.1.3 Objektif Basis Data

Secara lebih lengkap, pemanfaatan basis data dilakukan untuk memenuhi sejumlah tujuan (objektif) seperti berikut

a. Kecepatan dan kemudahan (Speed)

b. Efisiensi ruang penyimpanan (Space)

c. Keakuratan (Accuracy)

d. Ketersediaan (Avaibility)

e. Kelengkapan (Completeness)

f. Keamanan (Security)

Page 4: Program Sistem Informasi Perpustakaan

g. Kebersamaan pemakaian (Sharability)

2.2 SQL (Structured Query Language)

SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.

2.2.1 Sejarah

Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language).

Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R.

Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.

2.2.2 Standarisasi

Standarisasi SQL dimulai pada tahun 1986, ditandai dengan dikeluarkannya standar SQL oleh ANSI. Standar ini sering disebut dengan SQL86.Standar tersebut kemudian diperbaiki pada tahun 1989 kemudian diperbaiki lagi pada tahun 1992. Versi terakhir dikenal dengan SQL92. Pada tahun 1999 dikeluarkan standar baru yaitu SQL99 atau disebut juga SQL99, akan tetapi kebanyakan implementasi mereferensi pada SQL92.

Saat ini sebenarnya tidak ada server basis data yang 100% mendukung SQL92. Hal ini disebabkan masing-masing server memiliki dialek masing-masing.

Page 5: Program Sistem Informasi Perpustakaan

BAB III

HASIL PRAKTIKUM

3.1 Pembuatan database dengan bahasa SQL melalui Interbase Delphi

3.1.2 Source Code dengan bahasa SQLcreate table anggota (NO_AGT varchar (5) not null,

NM_AGT varchar (20) not null, ALAMAT VARCHAR (25), PRIMARY KEY (NO_AGT));

create table katalog (KD_BUKU varchar (5) not null, JUDUL varchar (25), PENGARANG varchar (20), PENERBIT varchar (15), TARIF integer, PRIMARY KEY (KD_BUKU));

create table pinjam (NO_PJM integer not null, NO_AGT varchar (5) not null,

KD_BUKU varchar (5) not null, TGL_PJM date, TGL_KMBL date, PRIMARY KEY (NO_PJM));

alter table PINJAM add constraint fkka foreign key (NO_AGT) references ANGGOTA (NO_AGT);

alter table PINJAM add constraint fkkb foreign key (KD_BUKU) references KATALOG (KD_BUKU);

Page 6: Program Sistem Informasi Perpustakaan

3.2 Menampilkan tabel yang telah dibuat dalam SQL pada IDE Delphi 7.0

a. Data Module untuk menginput database dari interbase ke IDE Delphi

b. Form utama pada tab menginput data anggota

Source Code Button input data anggota :

begin

dtm.ibtblagt.Append;

dtm.ibtblagt ['no_agt'] := edtno.Text;

dtm.ibtblagt ['nm_agt'] := edtnma.Text;

dtm.ibtblagt ['alamat'] := edtalmt.Text;

Button MenginputData Anggota

Page 7: Program Sistem Informasi Perpustakaan

dtm.ibtblagt.Post;

edtno.Text := ' ';

edtnma.Text:= ' ';

edtalmt.Text:= ' ';

edtno.SetFocus;

end;

b. Form utama pada tab menginput data katalog

Source Kode button input data katalog :

begin

dtm.ibtblktlg.Append;

dtm.ibtblktlg ['kd_buku'] := edtkd.Text;

dtm.ibtblktlg ['judul'] := edtjdl.Text;

dtm.ibtblktlg ['pengarang'] := edtpgrg.Text;

dtm.ibtblktlg ['penerbit'] := edtpt.Text;

dtm.ibtblktlg ['tarif'] := edttrf.Text;

dtm.ibtblktlg.Post;

edtkd.Text := ' ';

edtjdl.Text:= ' ';

Button MenginputData Katalog

Page 8: Program Sistem Informasi Perpustakaan

edtpgrg.Text := ' ';

edtpt.Text := ' ';

edttrf.Text := ' ';

edtkd.SetFocus;

end;

c. Form utama pada tab menginput data peminjam

Source Kode :

begin

dtm.ibtblpjm.Append;

dtm.ibtblpjm ['no_pjm'] := edtpjm.Text;

dtm.ibtblpjm ['no_agt'] := edtagt.Text;

dtm.ibtblpjm ['kd_buku'] := edtbku.Text;

dtm.ibtblpjm ['tgl_pjm'] := dtp1.Time;

dtm.ibtblpjm ['tgl_kmbl'] := dtp2.Time;

dtm.ibtblpjm.Post;

edtpjm.Text := ' ';

edtagt.Text:= ' ';

Button MenginputData Peminjam

Page 9: Program Sistem Informasi Perpustakaan

edtbku.Text:= ' ';

edtpjm.SetFocus;

end;

d. Form utama pada tab menginput data tranksaksi

- Source kode button input no. pinjam dan kode buku :

if not dtm.ibtblpjm.Locate('no_pjm', edtcari.Text,[]) and

not dtm.ibtblktlg.Locate('kd_buku', edtcari2.Text,[]) then

messagedlg('Data Tidak ditemukan', mterror,[mbok],0)

else begin

edit1.Text := dtm.ibtblpjm ['no_pjm'];

edit2.Text := dtm.ibtblpjm ['no_agt'];

edit3.Text := dtm.ibtblpjm ['kd_buku'];

edit4.Text := dtm.ibtblktlg ['tarif'];

dtppjm.Date := dtm.ibtblpjm ['tgl_pjm'];

dtpkmbl.Date := dtm.ibtblpjm ['tgl_kmbl'];

edtcari.Text := ' ';

edtcari2.Text := ' ';

Button menginput no. Pinjam dan

kode bukuButton bayar yang menampilkan

hasil bayar

Page 10: Program Sistem Informasi Perpustakaan

edtcari.SetFocus;

end;

end;

- Source Kode Button bayar :

var

b : integer;

hr_pjm,bl_pjm,th_pjm : word;

hr_kmbl,bl_kmbl,th_kmbl : word;

begin

decodedate(dtpPjm.Date,th_pjm,bl_pjm,hr_pjm);

decodedate(dtpKmbl.Date,th_kmbl,bl_kmbl,hr_kmbl);

lblbyar.Caption :=inttostr((hr_kmbl+(bl_kmbl*30)+(th_kmbl*365))

(hr_pjm+(bl_pjm*30)+(th_pjm*365)));

b := (strtoint(lblbyar.Caption)) * (strtoint (edit4.Text));

lblbyar.Caption := inttostr(b);

edtcari.SetFocus;

end;

Page 11: Program Sistem Informasi Perpustakaan

HASIL KESELURUHAN SOURCE KODE :

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, unit2, Grids, DBGrids, StdCtrls, ExtCtrls, Menus, ComCtrls, jpeg,

DBCtrls;

type

TForm1 = class(TForm)

StatusBar1: TStatusBar;

Timer1: TTimer;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

Panel3: TPanel;

Panel2: TPanel;

DBGrid1: TDBGrid;

Panel4: TPanel;

DBNavigator1: TDBNavigator;

Panel5: TPanel;

Panel6: TPanel;

Panel7: TPanel;

Panel8: TPanel;

Panel9: TPanel;

DBGrid2: TDBGrid;

DBNavigator2: TDBNavigator;

Panel10: TPanel;

GroupBox1: TGroupBox;

Panel11: TPanel;

DBNavigator3: TDBNavigator;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Panel12: TPanel;

edtno: TEdit;

edtnma: TEdit;

Page 12: Program Sistem Informasi Perpustakaan

edtalmt: TEdit;

Panel13: TPanel;

Button1: TButton;

Panel14: TPanel;

pnjdl: TPanel;

lbljdl: TLabel;

Panel1: TPanel;

Image1: TImage;

GroupBox2: TGroupBox;

Panel15: TPanel;

edtpjm: TEdit;

edtagt: TEdit;

edtbku: TEdit;

dtp1: TDateTimePicker;

dtp2: TDateTimePicker;

GroupBox3: TGroupBox;

Panel16: TPanel;

edtkd: TEdit;

edtjdl: TEdit;

edtpgrg: TEdit;

edtpt: TEdit;

edttrf: TEdit;

Panel17: TPanel;

Button2: TButton;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

Panel18: TPanel;

Button3: TButton;

Panel19: TPanel;

GroupBox4: TGroupBox;

edtcari: TEdit;

Label14: TLabel;

Panel20: TPanel;

Page 13: Program Sistem Informasi Perpustakaan

btnbyr: TButton;

pnlimpt: TPanel;

Button4: TButton;

pnlbyar: TPanel;

Edit1: TEdit;

Edit2: TEdit;

Label15: TLabel;

Label16: TLabel;

Label17: TLabel;

Label18: TLabel;

Label19: TLabel;

Label20: TLabel;

Label21: TLabel;

Label22: TLabel;

edtcari2: TEdit;

Edit4: TEdit;

edit3: TEdit;

dtppjm: TDateTimePicker;

dtpkmbl: TDateTimePicker;

lblbyar: TLabel;

DBGrid3: TDBGrid;

DBGrid4: TDBGrid;

procedure Timer1Timer(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure btnbyrClick(Sender: TObject);

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

teksgerak2 : string;

x : integer;

const teksgerak = '.:Muhammad Fauzi (090170045) Prodi Teknik Informatika Universitas

Malikussaleh:.';

Page 14: Program Sistem Informasi Perpustakaan

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

dtm.ibtblagt.Append;

dtm.ibtblagt ['no_agt'] := edtno.Text;

dtm.ibtblagt ['nm_agt'] := edtnma.Text;

dtm.ibtblagt ['alamat'] := edtalmt.Text;

dtm.ibtblagt.Post;

edtno.Text := ' ';

edtnma.Text:= ' ';

edtalmt.Text:= ' ';

edtno.SetFocus;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

dtm.ibtblktlg.Append;

dtm.ibtblktlg ['kd_buku'] := edtkd.Text;

dtm.ibtblktlg ['judul'] := edtjdl.Text;

dtm.ibtblktlg ['pengarang'] := edtpgrg.Text;

dtm.ibtblktlg ['penerbit'] := edtpt.Text;

dtm.ibtblktlg ['tarif'] := edttrf.Text;

dtm.ibtblktlg.Post;

edtkd.Text := ' ';

edtjdl.Text:= ' ';

edtpgrg.Text := ' ';

edtpt.Text := ' ';

edttrf.Text := ' ';

edtkd.SetFocus;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

dtm.ibtblpjm.Append;

dtm.ibtblpjm ['no_pjm'] := edtpjm.Text;

dtm.ibtblpjm ['no_agt'] := edtagt.Text;

dtm.ibtblpjm ['kd_buku'] := edtbku.Text;

dtm.ibtblpjm ['tgl_pjm'] := dtp1.Time;

dtm.ibtblpjm ['tgl_kmbl'] := dtp2.Time;

Page 15: Program Sistem Informasi Perpustakaan

dtm.ibtblpjm.Post;

edtpjm.Text := ' ';

edtagt.Text:= ' ';

edtbku.Text:= ' ';

edtpjm.SetFocus;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

if not dtm.ibtblpjm.Locate('no_pjm', edtcari.Text,[]) and

not dtm.ibtblktlg.Locate('kd_buku', edtcari2.Text,[]) then

messagedlg('Data Tidak ditemukan', mterror,[mbok],0)

else begin

edit1.Text := dtm.ibtblpjm ['no_pjm'];

edit2.Text := dtm.ibtblpjm ['no_agt'];

edit3.Text := dtm.ibtblpjm ['kd_buku'];

edit4.Text := dtm.ibtblktlg ['tarif'];

dtppjm.Date := dtm.ibtblpjm ['tgl_pjm'];

dtpkmbl.Date := dtm.ibtblpjm ['tgl_kmbl'];

edtcari.Text := ' ';

edtcari2.Text := ' ';

edtcari.SetFocus;

end;

end;

procedure TForm1.btnbyrClick(Sender: TObject);

var

b : integer;

hr_pjm,bl_pjm,th_pjm : word;

hr_kmbl,bl_kmbl,th_kmbl : word;

begin

decodedate(dtpPjm.Date,th_pjm,bl_pjm,hr_pjm);

decodedate(dtpKmbl.Date,th_kmbl,bl_kmbl,hr_kmbl);

lblbyar.Caption :=inttostr((hr_kmbl+(bl_kmbl*30)+(th_kmbl*365)) - (hr_pjm+

(bl_pjm*30)+(th_pjm*365)));

b := (strtoint(lblbyar.Caption)) * (strtoint (edit4.Text));

lblbyar.Caption := inttostr(b);

edtcari.SetFocus;

end;

Page 16: Program Sistem Informasi Perpustakaan

procedure TForm1.Timer1Timer(Sender: TObject);

begin

statusbar1.Panels.Items [0].Text := datetostr (date);

statusbar1.panels.Items [1].Text := timetostr (time);

inc(x);

teksgerak2 := teksgerak2+teksgerak[x];

if teksgerak2 = teksgerak then

begin

teksgerak2 := '';

x := 0;

end;

statusbar1.panels.Items [2].Text :=teksgerak2;

end;

procedure TForm1.FormActivate(Sender: TObject);

begin

tabsheet1.Show;

edtno.SetFocus;

end;

end.

Page 17: Program Sistem Informasi Perpustakaan

BAB IV

PENUTUP

Kesimpulan

Bahasa basis data terdiri atas:

Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek-objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau sekunder.

Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan menghapusnya atau hanya sekedar menampilkannya kembali.

SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.