makalah basis data ii

82
BAB I PENDAHULUAN 1.1.Latar Belakang. Pada Era globalisasi ini,sebuah perusahaan atau organisasi dituntut untuk memiliki kreativitas yang tinggi untuk dapat terus bertahan ditengah ketatnya persaingan.Untuk mangatasi hal tersebut, banyak organisasi atau perusahaan melakukan ekspansi secara basar-besaran. Dengan berkembangnya ruang lingkup usaha dan ekspansi yang dilakukanya, banyak perusahaan atau organisasi contohnya sebuah apotik ini,menerapakan sistem Database untuk mengatur atau menjaga kemanan datanya dan mengatur sumber dayanya.Dengan sistem database maka akan mempermudah sebuah perusahaan atau organisasi untuk mengolah datanya. Contohnya apotik swasta ini yaitu apotik bersama adalah salah satu contoh apotik yang merupakan pedagang disektor farmasi yang ada di kota paalangkaraya yang menggunakan sistem database dalam system pengolah datanya.Apotik brsama ini ini terbukti mampu terus bertahan ditengah maraknya persaingan dalam bidang farmasi yang ada di kota palangkaraya. Penjualan sub distributor yang dilakukan oleh apotik bersama adalah dengan menjual barang kepada konsumen atau masyarakat secara menyeluruh dan menjual kepada Page 1

Upload: enoyf47568

Post on 02-Jul-2015

534 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Makalah Basis Data II

BAB I

PENDAHULUAN

1.1.Latar Belakang.

Pada Era globalisasi ini,sebuah perusahaan atau organisasi dituntut untuk

memiliki kreativitas yang tinggi untuk dapat terus bertahan ditengah ketatnya

persaingan.Untuk mangatasi hal tersebut, banyak organisasi atau perusahaan

melakukan ekspansi secara basar-besaran.

Dengan berkembangnya ruang lingkup usaha dan ekspansi yang dilakukanya,

banyak perusahaan atau organisasi contohnya sebuah apotik ini,menerapakan sistem

Database untuk mengatur atau menjaga kemanan datanya dan mengatur sumber

dayanya.Dengan sistem database maka akan mempermudah sebuah perusahaan atau

organisasi untuk mengolah datanya.

Contohnya apotik swasta ini yaitu apotik bersama adalah salah satu contoh

apotik yang merupakan pedagang disektor farmasi yang ada di kota paalangkaraya

yang menggunakan sistem database dalam system pengolah datanya.Apotik brsama

ini ini terbukti mampu terus bertahan ditengah maraknya persaingan dalam bidang

farmasi yang ada di kota palangkaraya.

Penjualan sub distributor yang dilakukan oleh apotik bersama adalah dengan

menjual barang kepada konsumen atau masyarakat secara menyeluruh dan menjual

kepada apotik atau klinik-klinik lain yang ada di kota palangkaraya. Dengan ekspansi

yang dilakukanya apotik bersama tentu saja memrlukan sebuah system yang mampu

meng integrasikan semua data,yaitu data konsumen,data salesman,data

pembelian,data penjualan,dan laporan akan kegiatan transaksi yang akan

menggambarkan hasil dari aktivitas yang dilakukan untuk menghitung keuntungan

dan kerugian yang didapat.

Sistem yang saat ini digunakan sangatlah belum memenuhi semua kebutuhan

tersebut,sehingga perlu dilakukan penilitian untuk mendapatkan solusi terbaiknya.

1.2.Rumusan Masalah

Masalah – masalah yang ada bias dirumuskan adalah sebagai berikut :

1. Bagaimana melakukan perencanaan sumberdaya pada sebuah apotik

tersebut,yaitu apotik bersama,yang berskala menengah ini.

Page 1

Page 2: Makalah Basis Data II

2. Rancangan kebutuhan bisnis yang bagaimanakah yang diperlukan oleh apotik

bersama.

1.3.Tujuan

1. Melakukan perbaikan proses bisnis yang ada pada Apotik bersama tersebut

dengan konsep Database.

2. Pengembangan aplikasi apotik bersama dengan menggunakan konsep Database

yang bertujuan untuk meningkatkan kinerja semua sumber daya untuk

mendapatkan efisiensi dan efektivitas yang maksimum.

1.4.Metode Penelitian

Pada pembuatan makalah ini metode penulisan yang digunakan penulis adalah

sebagai berikut :

1. Untuk perancangan arsitektur sistem,dilakukan dengan metode system database.

2. Perancangan system dilakukan dengan menerapkan konsep database.

1.5.Ruang lingkup system.

Sistem informasi data apotik ini melingkupi:

1. Pembuatan database yang nantinya dapat mempermudah dalam pencarian data

apotik lama, ataupun data apotik baru yang akan ditambahkan.

2. Pembuatan sistem yang nantinya dapat berfungsi sebagai transaksi

penyimapanan data baik penjualan maupun pembelian obat pada apotik bersama,

yaitu berupa perhitungan biaya penjualan dan pembalian yang akan di bayar

oleh konsumen/pembeli berdasarkkan tindakan berdasarkan jumlah pembelian

dan penjualan yang dilakukan oleh konsumen terhadap apotik bersama tersebut.

Sistem ini mampu menambah data apotik, update data apotik, serta menghapus

data apotik.

Page 2

Page 3: Makalah Basis Data II

BAB II

LANDASAN TEORI DAN TINJAUAN PUSTAKA

2.1.Basis Data

Data diperlukan dalam segala hal, baik berupa pengukuran, pencatatan,

pengumpulan informasi, maupun pengambilan keputusan semuanya memerlukan

data. Dengan kata lain data sangat dibutuhkan karena informasi yang ada akan

memberikan arti yang sangat penting baik untuk saat ini maupun untuk akan datang.

Data dan Informasi telah menjadi bagian vital dalam pertumbuhan bisnis. Saat ini

data dan informasi pada umumnya disimpan dalam satu atau lebih database. Pada

skala yang luas dan historis penyimpanan data disimpan dalam sebuah gudang data

atau yang lebih dikenal dengan Datawarehouse. Data dan informasi tersebut dikelola

oleh sistem khusus yang dikenal dengan Database Management System (DBMS).

Basis data (data base) adalah kumpulan dari data yang saling berhubungan satu

dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan

perangkat lunak untuk memanipulasinya. Dari definisi ini, terdapat tiga hal yang

berhubungan dengan basis data, yaitu :

Data itu sendiri yang diorganisasikan dalam bentuk basis data (data base)..

Simpanan permanen (storage) untuk menyimpan basis data tersebut. Simpanan ini

merupakan bagian dari teknologi perangkat keras yang digunakan di sistem

informasi. Simpanan permanen yang umumnya digunakan berupa hard disk.

Perangkat lunak untuk memanipulasi basis datanya. Perangkat lunak ini dapat

dibuat sendiri dengan menggunakan bahasa pemrograman komputer atau dibeli

dalam bentuk suatu paket. Banyak paket perangkat lunak yang disediakan untuk

memanipulasi basis data. Paket perangkat lunak ini disebut dengan DBMS (Data

Base Management Systems). Contoh DBMS yang terkenal misalnya adalah dBASE,

Fox Base, Microsoft Access, Oracle dan lain-lain.

Sistem database pada dasarnya adalah sistem terkomputerisasi yang tujuan

utamanya untuk memelihara informasi dan membuat informasi tersebut tersedia pada

saat diperlukan.

Operasi-Operasi Yang Dapat Dilakukan Pada Database :

menambahkan file ke sistem database,

Page 3

Page 4: Makalah Basis Data II

menyisipkan data ke dalam suatu file,

mengambil data dari suatu file,

mengubah data pada suatu file,

menghapus data dari suatu file,

menyajikan informasi dari suatu atau sejumlah file,

mengosongkan file.

Manfaat Sistem Database

mengurangi duplikasi data (kemubaziran),

menghindari inkonsistenan data,

meningkatkan integritas data, dimana data selalu dalam keadaan valid; hal ini

hanya dapat terjadi bila data hanya berada dalam satu tempat,

adanya independensi data, sifat yang memungkinkan perubahan struktur file

tidak mempengaruhi program dan sebaliknya; juga dapat berarti bahwa data

bersifat tidak bergantung pada data lain,

adanya sekuritas data, yang bermanfaat untuk menghindari pengaksesan data

oleh yang tidak berhak,

penggunaan data menjadi lebih mudah, dimana pada umumnya sistem

manajemen database (DataBase Management System = DBMS) menyediakan

fasilitas query yang memudahkan user untuk memperoleh informasi.

Salah satu komponen penting dalam sistem informasi, karena merupakan dasar

dalam menyediakan informasi.

Menentukan kualitas informasi : akurat, tepat pada waktunya dan relevan.

Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan

dengan biaya mendapatkannya.

Sistem manajemen database dapat diartikan sebagai suatu program komputer

yang digunakan untuk memasukkan, mengubah, menghapus, memanipulasi dan

memperoleh data dengan praktis dan efisien.

2.2.Integritas Data

Terminologi integritas data terkait dengan keakuratan dan kelengkapan data.

Ketika isi suatu database dimodifikasi dengan pernyataan insert, update atau delete,

integritas data yang tersimpan bisa saja hilang dikarenakan banyak hal.

Contohnya :

Page 4

Page 5: Makalah Basis Data II

1. Data tidak valid yang ditambahkan ke basis data.

2. Edit data yang tepat.

3. Hasil modifikasi terhadap database yang mungkin hilang karena system error

or power failure.

4. Modifikasi terhadap basis data yang sifatnya parsial, sehingga data-data antar

tabel yang berelasi tidak sinkron.

Salah satu peran DBMS yang penting adalah memelihara integritas database.

Beberapa jenis data integrity constraint didalam basis data relasional, adalah :

1. Required data.

2. Validity checking.

3. Entity integrity.

4. Referential integrity.

5. Other data relationship.

6. Business rules.

7. Consistency.

Database dapat dibuat dengan cara manual yaitu dengan Enterprise Manager

atau menggunakan Create Database Wizard. Terdapat beberapa batasan untuk

memastikan integritas dari suatu field. Ada diantaranya, yaitu:

NOT NULL menentukan bahwa kolom tidak bisa menerima nilai null.

CHECK membatasi nilai yang bisa diletakkan ke dalam kolom dengan

menguji suatu kondisi.

UNIQUE memaksa kolom-kolom memiliki nilai yang eksklusif sehingga

tidak boleh ada dua record dengan isi yang sama.

PRIMARY KEY membuat kunci utama dari tabel, kolom, atau kombinasi

dari kolom dengan nilai yang harus eksklusif di dalam tabel untuk mengenali

baris. Kolom dengan batasan ini tidak boleh bernilai null.

2.3.Stored Procedure

Prosedur pada dasarnya adalah sebuah program yang ditulis dalam bahasa

Transact-SQL yang disimpan dalam database SQL Server. Stored Procedure dapat

digunakan untuk menyimpan beberapa perintah yang berkaitan dengan pengolahan

data dan dengan menggunakan store procedure dapat dilakukan penginputan yang

Page 5

Page 6: Makalah Basis Data II

CREATE PROC [ EDURE ] Procedure_Name (@Parameter1

Tipedataparameter(Panjangparameter), @Parameter n Tipedata n

(Panjangparameter n)

AS

Begin

ALTER PROC [ EDURE ] Procedure_Name (@Parameter1

Tipedataparameter(Panjangparameter), @Parameter n Tipedata n

(Panjangparameter n)

AS

Begin

dinamis dalam pengelolaan data dalam database. Berikut ini beberapa karakteristik

Stored Procedure, yaitu :

Dapat merupakan Script atau bahkan batch file

Disimpan pada database, bukan file terpisah

Tidak seperti script, dapat memiliki parameter input, output dan return values

Prosedur tersimpan sangat bermanfaat pada lingkungan client-server, baik untuk

meningkatkan kinerja maupun untuk pemeliharaan. Karena satu prosedur bisa

digunakan oleh beberapa program, pengelolaan sistem bisa menjadi lebih mudah

karena satu perubahan akan segera direfleksikan kepada semua user.Untuk membuat

sebuah stored procedure dipergunakan sintax sebagai berikut :

Untuk menjalankan menjalankan prosedur, buka query analyzer dan ketikkan exec

nama_prosedur. Apabila prosedur yang ingin dijalankan memiliki parameter, maka

tuliskan parameter tersebut setelah nama prosedur.

Contoh: exec nama_procedure parameter1

Untuk mengubah prosedur dapat menggunakan perintah alter procedure yang

diikuti dengan nama prosedur tersebut dan perubahan yang dibutuhkan. Contoh:

Prosedur bisa dihapus dengan perintah drop procedure atau bisa juga dengan

melalui enterprise manager.

Page 6

Page 7: Makalah Basis Data II

BAB III

PEMBAHASAN

3.1. Desain database

Data Microsoft SQL Server disimpan dalam beberapa database. Data dalam suatu

database terorganisasi ke dalam komponen logis bagi user. Suatu database juga

secara fisik teridiri dua atau lebih file pada disk. Bila menggunakan suatu database,

pekerjaan terutama berlangsung pada komponen logis seperti table, view, file

procedure, dan user. Sedangkan secara fisik, file database dapat terlihat pada disk,

dan umumnya hanya database administrator yang perlu bekerja dengan komponen

fisik tersebut.

Mendesain logika database mencakup beberapa hal yaitu :

Table dan table name - disebut juga sebagai entity

Column name dalam setiap tabel - disebut sebagai attribute.

Column characteristic - seperti nilai unik dan penyertaan nilai null.

Primary key untuk setiap tabel — merupakan column yang menyimpan nilai unik

untuk bisa mengidentifikasi setiap baris pada tabel. Walaupun terdapat column

lain dengan nilai unik, hanya satu yang teridentifikasi sebagai kunci akses dalam

melakukan akses data. Setiap tabel hanya dapat memiliki satu primary key.

Relationship between table - baris di dalam beberapa tabel dapat tergantung pada

satu atau lebih baris pada tabel lain. Ketergantungan antar tabel ini disebut sebagal

relasi (relationship). Untuk mendefinisikan relasi, suatu column atau beberapa

column dalam suatu tabel harus diberikan key, disebut sebagai foreign key dan

menjadi referensi bagi primary key dan tabel yang lain.

a) SQL-Server Database File dan Transaction Log

File Database dan SQL-Server dapat dikategorikan menjadi 3 jenis :

1. PRIMARY DATA FILE. Data disimpan dalam file dengan ekstensi “.mdf”. File

ini merupakan database yang sesungguhnya, berisi tabel dan objek lain dan

database. File ini disebut juga sebagal Primary Data File.

2. SECONDARY DATA FILE. File secondary memiliki ekstensi “.ndf”. File ini

merupakan tempat penyimpanan data dan object yang tidak disimpan pada pada

Page 7

Page 8: Makalah Basis Data II

file primary. Database tidak harus memiliki file sekunder, tetapi dapat memiliki

beberapa file sekunder.

3. LOG. File ini berisi catatan antara lain mengenai modifikasi tabel (UPDATE),

input data baru (INSERT), dan penghapusan data (DELETE). Catatan tersebut

akan dimanfaatkan oteh SQL-Server jika terjadi kegagalan sistem yang

mengakibatkan crash. Dengan catatan yang ada pada file log, SQLServer

melakukan proses recovery, dan melakukan proses “rollback” untuk transaksi

yang belum selesai. File LOG memiliki ekstensi “.ldf”. Secara default besar file

log adalah 25% dari file data.

Saat kita menciptakan database dengan statement CREATE DATABASE,

SQLServer langsung membuat 2 file, yaitu PRIMARY DATAFILE dan LOG. Setiap

data disimpan dalam 8 Kb block yang berdamping pada disk (SQL-Server

menempatkan 2Kb untuk setiap pages). Kumpulan block ini disebut sebagai pages.

Ini berarti database dapat menyimpan 128 pages pada setiap megabyte hard disk.

Sebuah baris (row) data tidak dapat melebihi besar pages. Maximum data pada satu

baris adalah 8068 bytes. Selisih dari 8192 digunakan untuk header file. Sedangkan

maximum space yang dapat digunakan dalam satu baris adalah 8094. Tabel, object

database lain, dan index disimpan pada Extent. Suatu extent adalah 8 pages yang

berkesinambungan atau 64 Kb. Karena itu suatu database memiliki 16 extent pada

setiap megabytes hard disk. Bila tabel berkembang sampai dengan 8 pages, maka

tebel akan menggunakan extent sendiri (Unifor Extent).

b) Pembuatan Database Apotik

Untuk membuat sebuah database pada query analyzer, sintax yang umum

digunakan yaitu :

Page 8

CREATE DATABASE database_name[ ON[ <filespec> [,…n] ][,<filegroup> [,…n] ]

[ LOG ON {<filespec> [,…n]} ][ COLLATE collation_name ][ FOR LOAD | FOR ATTACH ]<filespec>::=[ PRIMARY ]( [ NAME = logical_file_name, ]FILENAME = ‘os_file_name’[, SIZE = size ][, MAXSIZE = { max_size | UNLIMITED } ][, FILEGROWTH = growth_increment ] ) [,…n]<filegroup>::=FILEGROUP filegroup_name <filespec> [,…n]

Page 9: Makalah Basis Data II

Untuk membuat database apotik yang sintax yang digunakan yaitu :

Hasil Eksekusi Pada Query Analyzer :

Penjelasan :

Database diatas diberi nama ApotikBersama. Data_filesnya diberinama Apotik_data

dimana data_files ini akan disimpan pada FileName yaitu C:\Program Files\

Microsoft SQL Server\MSSQL\Data\APOTIKBersama.mdf yang berarti database

ini nantinya akan ditempatkan pada C:\Program Files\Microsoft SQL Server\

MSSQL\Data\ , dengan nama APOTIKBersama dan eksetensi mdf. Size atau

besarnya data file pada saat database dibuat ialah 10 MB. Sedangkan untuk

Page 9

CREATE DATABASE ApotikBersamaON PRIMARY( NAME = Apotik_data, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\APOTIK.mdf', SIZE = 10MB, MAXSIZE = 100MB, FILEGROWTH =5MB )LOG ON(NAME = 'Apotik_Log',FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\Apotik_Log' ,SIZE = 5MB,MAXSIZE = 50MB,FILEGROWTH = 5MB)

Page 10: Makalah Basis Data II

maksimum sizenya ditetapkan 100 MB. Untuk nilai restric/filegrowth ditetapkan

besarnya ialah 5 MB.

Untuk transaction log Data_filesnya diberinama Apotik_log dimana data_files ini

akan disimpan pada FileName yaitu C:\Program Files\Microsoft SQL Server\

MSSQL\Data\APOTIKBersama_log.ldf yang berarti database ini nantinya akan

ditempatkan pada C:\Program Files\Microsoft SQL Server\MSSQL\Data\ , dengan

nama APOTIKBersama_log dan eksetensi ldf. Size atau besarnya data file pada

saat database dibuat ialah 5 MB. Sedangkan untuk maksimum sizenya ditetapkan 50

MB. Untuk nilai restric/filegrowth ditetapkan besarnya ialah 5 MB.

Keterangan :

Name : Nama logikal dari data file tersebut.

Filename : Nama fisik yang tersimpan di dalam disk pada server.

Size : Nilai besarnya data file pada saat database dibuat.

Maxsize : Nilai maximum dari data file yang didefinisikantersebut.

Filegrowth : Nilai dari data file tersebut yang akan ditambahkan saat data file

yang didefinisikan tersebut telah terisi penuh.

Database_name : Merupakan nama database baru. Nama database harus unik pada

sebuah server.

ON : Menspesifikasikan bahwa file-file disk yang digunakan untuk

menyimpan porsi data dari database yang didefinisikan secara

eksplisit.

PRIMARY : Menspesifikasikan hubungan <filespec> list yang

mendefinisikan primary file. Sebuah database hanya dapat

mempunyai satu primary file.

3.2. Struktur Tabel

Setelah database ApotikBersama telah selesai dibuat maka dilanjutkan dengan

pembuatan tabel-tabel. Dalam database apotik ini akan dimasukan delapan buah tabel

yaitu Tabel Jenis, Tabel DaftarObat, Tabel Pegawai, Tabel Pemasok, Tabel

Pembelian, Tabel Detail_PembelianObat, Tabel Penjualan, Tabel

Detail_PenjualanObat.

a) Struktur Tabel Jenis

Page 10

Page 11: Makalah Basis Data II

Tabel jenis digunakan untuk merekam data jenis-jenis obat yang tersedia di

apotik. Tabel ini menjelaskan kategori obat yang ada. Misalnya tablet, injeksi, kaplet,

kapsul dan lain sebagainya.

Kolom TipeData Panjang Allownull Status

KodeJenis Char 4 No Primary Key

JenisObat Char 10 No -

b) Struktur Tabel DaftarObat

Tabel daftar obat digunakan untuk menyimpan data obat yang tersedia di apotik.

Data tersebut berupa kodejenis, namaobat, jumlahstock, hargasatuan, tglkadaluarsa

dari obat. Tabel ini akan berelasi dengan tabel jenis guna mengetahui jenis dari obat.

Kolom TipeData Panjang Allownull Status

KodeObat Char 4 No Primary Key

KodeJenis Char 4 No Foreign Key

NamaObat Varchar 25 No -

JumlahStock Int 4 No -

HargaSatuan Money 8 No -

TglKadaluarsa Datetime 8 No -

c) Struktur Tabel Pegawai

Tabel pegawai digunakan untuk menyimpan data pegawai atau karyawan yang

bekerja di apotik. Tabel pegawai nantinya akan berelasi dengan tabel penjualan, hal

ini dimaksudkan agar diketahui siapa pegawai yang menjual obat.

Kolom TipeData Panjang Allownull Status

KodePegawai Char 4 No Primary Key

NamaPegawai Varchar 25 No -

Jenis_kelamin Char 1 No -

Alamat Varchar 25 No -

NoTelpon Varchar 20 No -

Page 11

Page 12: Makalah Basis Data II

d) Struktur Tabel Pemasok

Tabel Pemasok digunakan untuk menyimpan data Pemasok atau pemasok yang

menyediakan semua barang yang dijual di apotik. Dengan adanya tabel ini pihak

apotik dapat mengetahui daftar nam pemasok obat pada apotiknya.

Kolom TipeData Panjang Allownull Status

KodePemasok Char 4 No Primary Key

NamaPemasok Varchar 25 No -

Alamat Varchar 25 No -

Notelpon Varchar 20 No -

e) Struktur Tabel Pembelian

Tabel Pembelian digunakan untuk menyimpan data transaksi pembelian obat dari

Pemasok atau pemasok. Dan data lengkap mengenai pembelian dapat diakses pada

database detail_pembelianobat. Dengan adanya tabel ini pihak apotik dapat

mengetahui data mengenai transaksi pembelian.

Kolom TipeData Panjang Allownull Status

KodePembelian Char 4 No Primary Key

KodePemasok Char 4 No Foreign key

KodePegawai Char 4 No Foreign Key

TotalHarga Money 8 No -

TanggalPembelian Datetime 8 No -

f) Struktur Tabel Detail_PembelianObat

Tabel Detail Pembelian digunakan untuk menyimpan data berupa detail dari

barang yang dibeli dari Pemasok. Sehingga tabel detail_pembelian ini nanti dapat

diakses oleh tabel pembelian.

Kolom TipeData Panjang Allownull Status

KodeDetailPembelian Char 4 No Primary Key

KodePembelian Char 4 No Foreign key

KodeObat Char 4 No Foreign key

HargaSatuan Money 8 No -

JumlahPembelian int 4 No -

g) Struktur Tabel Penjualan

Page 12

Page 13: Makalah Basis Data II

Tabel penjualan digunakan untuk menyimpan data proses transaksi penjualan

secara langsung. Dan data lengkap mengenai nama pegawai atau pun atribut lainnya

dapat diakses pada tabel detail_penjualanobat.

Kolom TipeData Panjang Allownull Status

KodePenjualan Char 4 No Primary Key

NamaPelanggan Char 4 No Foreign key

KodePegawai Char 4 No Foreign key

TotalPembayaran money 8 No -

TanggalPenjualan Datetime 8 No -

h) Struktur Tabel Detail_PenjualanObat

Tabel detail_penjualanobat digunakan untuk menyimpan data yang lebih

spesifik/detail dari obat yang dijual.

Kolom TipeData Panjang Allownull Status

KodeDetailPenjualan Char 4 No Primary Key

KodePenjualan Char 4 No Foreign key

KodeObat Char 4 No Foreign key

HargaJual Money 8 No

Jumlahpenjualan int 4 No -

Berpatokan pada stuktur desin tabel yang telah dibuat maka untuk

mengaplikasikannya dapat digunakan perintah sql sebagai berikut :

a) Tabel Jenis

Create Table Jenis(

KodeJenis char(4) not null primary key,

JenisObat varchar(10)not null)

b) Tabel DaftarObat

Page 13

Page 14: Makalah Basis Data II

Create Table Daftarobat(

KodeObat char(4) not null primary key,

KodeJenis char(4) not null foreign key references

jenis(kodejenis)on delete no action,

NamaObat varchar(25) not null,

JumlahStock int not null,

HargaSatuan money not null,

TglKadaluarsa datetime not null)

c) Tabel Pegawai

Create Table Pegawai(

KodePegawai char(4) not null primary key,

NamaPegawai varchar(25) not null,

Jenis_kelamin char(1) check (Jenis_kelamin ='L'or

Jenis_kelamin ='P'),

Alamat varchar(25)not null,

NoTelpon varchar(20)not null)

d) Tabel Pemasok

Page 14

Page 15: Makalah Basis Data II

Create Table Pemasok(

KodePemasok char(4) not null primary key,

NamaPemasok varchar(20)not null,

Alamat varchar(25)not null,

NoTelpon varchar(20)not null)

e) Tabel Pembelian

Create Table Pembelian(

KodePembelian char(4) not null primary key,

KodePemasok char(4) not null foreign key references

Pemasok(KodePemasok)on delete no action ,

KodePegawai char(4)not null foreign key references

Pegawai(KodePegawai)on delete no action,

TotalPembelian money not null,

TanggalPembelian datetime not null)

f) Tabel Penjualan

Page 15

Page 16: Makalah Basis Data II

Create Table Penjualan(

KodePenjualan char(4) not null primary key,

NamaPelanggan varchar(25) not null,

KodePegawai char(4)not null foreign key references

Pegawai(KodePegawai)on delete no action,

TotalPembayaran money not null,

TanggalPenjualan datetime not null)

g) Tabel Detail_PembelianObat

Create Table Detail_Pembelianobat(

KodeDetailPembelian char(4)not null primary key,

KodePembelian char(4) not null foreign key references

Pembelian(KodePembelian)on delete no action,

KodeObat char(4)not null foreign key references

DaftarObat(KodeObat)on delete no action ,

HargaSatuan money not null,

JumlahPembelian int not null)

h) Tabel Detail_PenjualanObat

Page 16

Page 17: Makalah Basis Data II

Create Table Detail_Penjualanobat(

KodeDetailPenjualan char(4)not null primary key,

KodePenjualan char(4)not null foreign key references

Penjualan(KodePenjualan)on delete no action,

KodeObat char(4)not null foreign key references

DaftarObat(KodeObat) on delete no action,

KodePegawai char(4)not null foreign key references

Pegawai(KodePegawai)on delete no action)

Penjelasan :

Create table nama_tabel merupakan query yang digunakan untuk membuat sebuah

tabel.

Not null digunakan untuk menyatakan bahwa kolom tidak bisa menerima nilai null.

Primary Key digunakan untuk menyatakan suatu kolom merupakan kunci utama

(primary key) dari table.

Check digunakan untuk membatasi nilai yang bisa diletakkan ke dalam kolom

dengan menguji suatu kondisi

Foreign Key Reference digunakan untuk menyatakan terdapat suatu relasi (tabel)

lain yang mempunyai Primary Key yang memiliki nilai yang sama dengan atribut

foreign key.

On delete no action digunakan untuk menyatakan apabila data field didelete maka

data lain yang berelasi dengan tabel tersebut tidak akan terhapus.

3.3.Relationship

Page 17

Page 18: Makalah Basis Data II

Berdasarkan desain dan struktur tabel yang telah dibuat, maka dapat digambarkan

hubungan atau relasi dari tabel-tabel ialah sebagai berikut :

RELATIONAL TABEL

Ket :

Tanda (*s) menunjukan primary key atau kunci utama

Tanda (**) menunjukan foreignkey atau atribut yang melengkapi satu relasi yang

menunjukan ke atribut induknya.

3.4.Stored Procedure

Page 18

Page 19: Makalah Basis Data II

CREATE PROC [ EDURE ] Procedure_Name (@Parameter1

Tipedataparameter(Panjangparameter), @Parameter n Tipedata n

(Panjangparameter n)

AS

Begin

ALTER PROC [ EDURE ] Procedure_Name (@Parameter1

Tipedataparameter(Panjangparameter), @Parameter n Tipedata n

(Panjangparameter n)

AS

Begin

Prosedur pada dasarnya adalah sebuah program yang ditulis dalam bahasa

Transact-SQL yang disimpan dalam database SQL Server. Stored Procedure dapat

digunakan untuk menyimpan beberapa perintah yang berkaitan dengan pengolahan

data dan dengan menggunakan store procedure dapat dilakukan penginputan yang

dinamis dalam pengelolaan data dalam database. Berikut ini beberapa karakteristik

Stored Procedure, yaitu :

Dapat merupakan Script atau bahkan batch file

Disimpan pada database, bukan file terpisah

Tidak seperti script, dapat memiliki parameter input, output dan return values

Prosedur tersimpan sangat bermanfaat pada lingkungan client-server, baik untuk

meningkatkan kinerja maupun untuk pemeliharaan. Karena satu prosedur bisa

digunakan oleh beberapa program, pengelolaan sistem bisa menjadi lebih mudah

karena satu perubahan akan segera direfleksikan kepada semua user.Untuk membuat

sebuah stored procedure dipergunakan sintax sebagai berikut :

Untuk menjalankan menjalankan prosedur, buka query analyzer dan ketikkan exec

nama_prosedur. Apabila prosedur yang ingin dijalankan memiliki parameter, maka

tuliskan parameter tersebut setelah nama prosedur.

Contoh: exec nama_procedure parameter1

Untuk mengubah prosedur dapat menggunakan perintah alter procedure yang

diikuti dengan nama prosedur tersebut dan perubahan yang dibutuhkan. Contoh:

Page 19

Page 20: Makalah Basis Data II

Prosedur bisa dihapus dengan perintah drop procedure atau bisa juga dengan

melalui enterprise manager.

1) Membuat Prosedur Insert tabel

Prosedur insert digunakan untuk menginputkan data-data pada tabel. Sintax yang

digunakan ialah :

CREATE PROC [ EDURE ] Procedure_Name (@Parameter1

Tipedataparameter(Panjangparameter), @Parameter n Tipedata n

(Panjangparameter n)

AS

Begin

Insert into table_name values(@parameter 1,……………,@parameter n)

end

Contoh pengimplikasiannya terhadap tabel-tabel dalam database apotik ialah

sebagai berikut :

a) Membuat Prosedur Insert Jenis

Penjelasan :

InsertJenis merupakan procedure untuk menginputkan data tabel Jenis. Variabel

parameternya adalah (@KodeJenis char(4) maksudnya variabel ini memiliki tipe data

char dengan panjang data 4 karakter ,@JenisObat varchar (10) maksudnya variabel

ini memiliki tipe data varchar dengan panjang data 10. Kemudian di dalam prosedur

ini terdapat sintak as begin yang digunakan untuk mengawali eksekusi di dalam

prosedur yaitu eksekusi perintah insert into Jenis values (@KodeJenis,

@JenisObat). Perintah insert digunakan untuk memasukkan data-data ke tabel Jenis

dengan nilai-nilai yang terdapat pada variabel @KodeJenis, @JenisObat. Kemudian

Page 20

Page 21: Makalah Basis Data II

sintak end digunakan untuk menghentikan semua eksekusi. Sedangkan untuk

menjalankan prosedur ini gunakan perintah berikut:

b) Membuat Prosedur Insert Daftar Obat

Penjelasan :

InsertObat merupakan procedure untuk menginputkan data tabel DaftarObat.

Variabel parameternya adalah (@KodeObat char(4) maksudnya variabel ini memiliki

tipe data char dengan panjang data 4 karakter ,@KodeJenis char(4) maksudnya

variabel ini memiliki tipe data char dengan panjang data 4 karakter, @NamaObat

varchar(25) maksudnya variabel ini memiliki tipe data varchar dengan panjang data

25 karakter, @JumlahStock int maksudnya variabel ini memiliki tipe data integer,

@HargaSatuan money, @Tglkadaluarsa datetime maksudnya variabel ini memiliki

tipe data datetime. Kemudian di dalam prosedur ini terdapat sintak as begin yang

digunakan untuk mengawali eksekusi di dalam prosedur yaitu eksekusi perintah

Page 21

Page 22: Makalah Basis Data II

insert into DaftarObat values (@KodeObat, @KodeJenis, @NamaObat,

@JumlahStock, @TglKadaluarsa). Perintah insert digunakan untuk memasukkan

data-data ke tabel DaftarObat dengan nilai-nilai yang terdapat pada variabel

@KodeObat, @KodeJenis, @NamaObat, @JumlahStock, @TglKadaluarsa.

Kemudian sintak end digunakan untuk menghentikan semua eksekusi. Sedangkan

untuk menjalankan prosedur ini gunakan perintah berikut:

c) Membuat Prosedur Insertpemasok

Penjelasan :

InsertPemasok merupakan procedure untuk menginputkan data tabel Pemasok.

Variabel parameternya adalah @KodePemasok char(4) maksudnya variabel ini

memiliki tipe data char dengan panjang data 4 karakter ,@NamaPemasok

varchar(20) maksudnya variabel ini memiliki tipe data varchar dengan panjang data

20 karakter, @Alamat varchar(25) maksudnya variabel ini memiliki tipe data varchar

Page 22

Page 23: Makalah Basis Data II

dengan panjang data 25 karakter, @NoTelpon varchar(20) maksudnya variabel ini

memiliki tipe data varchar dengan panjang data 20 karakter. Kemudian di dalam

prosedur ini terdapat sintak as begin yang digunakan untuk mengawali eksekusi di

dalam prosedur yaitu eksekusi perintah insert into InsertPemasok values

(@KodePemasok, @NamaPemasok, @Alamat, @Notelpon). Perintah insert

digunakan untuk memasukkan data-data ke tabel Pemasok dengan nilai-nilai yang

terdapat pada variabel @KodePemasok, @NamaPemasok, @Alamat, @Notelpon.

Kemudian sintak end digunakan untuk menghentikan semua eksekusi. Sedangkan

untuk menjalankan prosedur ini gunakan perintah berikut:

d) Membuat prosedur InsertPegawai

Page 23

Page 24: Makalah Basis Data II

Penjelasan :

Insertpegawai merupakan procedure untuk menginputkan data tabel pegawai.

Variabel parameternya adalah @KodePegawai char(4) maksudnya variabel ini

memiliki tipe data char dengan panjang data 4 karakter ,@NamaPegawai varchar(25)

maksudnya variabel ini memiliki tipe data varchar dengan panjang data 25 karakter,

@Jenis_Kelamin char(1) maksudnya variabel ini memiliki tipe data char dengan

panjang data 1 karakter,@Alamat varchar(25) maksudnya variabel ini memiliki tipe

data varchar dengan panjang data 25 karakter, @NoTelpon varchar(20) maksudnya

variabel ini memiliki tipe data varchar dengan panjang data 20 karakter. Kemudian di

dalam prosedur ini terdapat sintak as begin yang digunakan untuk mengawali

eksekusi di dalam prosedur yaitu eksekusi perintah insert into InsertPegawai values

(@KodePegawai, @NamaPegawai, @Jenis_Kelamin, @Alamat, @Notelpon).

Perintah insert digunakan untuk memasukkan data-data ke tabel Pegawai dengan

nilai-nilai yang terdapat pada variabel @KodePegawai, @NamaPegawai,

@Jenis_Kelamin, @Alamat, @Notelpon. Kemudian sintak end digunakan untuk

menghentikan semua eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan

perintah berikut:

Page 24

Page 25: Makalah Basis Data II

e) Membuat prosedur InsertPenjualan

Penjelasan :

InsertPenjualan merupakan procedure untuk menginputkan data tabel Penjualan.

Variabel parameternya adalah @KodePenjualan char(4) maksudnya variabel ini

memiliki tipe data char dengan panjang data 4 karakter ,@NamaPelanggan

varchar(25) maksudnya variabel ini memiliki tipe data varchar dengan panjang data

25 karakter, @KodePegawai char(4) maksudnya variabel ini memiliki tipe data char

dengan panjang data 4 karakter,@TotalPembayaran money maksudnya variabel ini

memiliki tipe data money, @TanggalPenjualan datetime maksudnya variabel ini

memiliki tipe data datetime. Kemudian di dalam prosedur ini terdapat sintak as begin

yang digunakan untuk mengawali eksekusi di dalam prosedur yaitu eksekusi perintah

insert into InsertPenjualan values (@KodePenjualan, @NamaPelanggan,

@KodePegawai, @TotalPembayaran, @TanggalPenjualan). Perintah insert

digunakan untuk memasukkan data-data ke tabel Penjualan dengan nilai-nilai yang

terdapat pada variabel @KodePenjualan, @NamaPelanggan, @KodePegawai,

@TotalPembayaran, @TanggalPenjualan. Kemudian sintak end digunakan untuk

menghentikan semua eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan

perintah berikut:

Page 25

Page 26: Makalah Basis Data II

e) Membuat prosedur InsertPembelian

Penjelasan :

Prosedur InsertPembelian merupakan procedure untuk menginputkan data tabel

pembelian. Variabel parameternya adalah @KodePembelian char(4) maksudnya

variabel ini memiliki tipe data char dengan panjang data 4 karakter ,@KodePemasok

char(4) maksudnya variabel ini memiliki tipe data varchar dengan panjang data 4

karakter, @KodePegawai char(4) maksudnya variabel ini memiliki tipe data char

dengan panjang data 4 karakter, @TotalPembelian money maksudnya variabel ini

memiliki tipe data money, @TanggalPembelian datetime maksudnya variabel ini

memiliki tipe data datetime. Kemudian di dalam prosedur ini terdapat sintak as begin

yang digunakan untuk mengawali eksekusi di dalam prosedur yaitu eksekusi perintah

insert into InsertPembelian values (@KodePembelian, @KodePemasok,

Page 26

Page 27: Makalah Basis Data II

@KodePegawai, @TotalPembelian, @TanggalPembelian). Perintah insert

digunakan untuk memasukkan data-data ke tabel Pembelian dengan nilai-nilai yang

terdapat pada variabel @KodePembelian, @KodePemasok, @KodePegawai,

@TotalPembelian, @TanggalPembelian. Kemudian sintak end digunakan untuk

menghentikan semua eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan

perintah berikut:

e) Membuat prosedur InsertDetail_PenjualanObat

Penjelasan :

Prosedur InsertDetail_PenjualanObat merupakan procedure untuk menginputkan

data tabel Detail_PenjualanObat. Variabel parameternya adalah

@KodeDetailPenjualan char(4) maksudnya variabel ini memiliki tipe data char

Page 27

Page 28: Makalah Basis Data II

dengan panjang data 4 karakter ,@KodePenjualan char(4) maksudnya variabel ini

memiliki tipe data varchar dengan panjang data 4 karakter, @KodeObat char(4)

maksudnya variabel ini memiliki tipe data char dengan panjang data 4 karakter,

@Hargajual money maksudnya variabel ini memiliki tipe data money,

@JumlahPembelian int maksudnya variabel ini memiliki tipe data integer. Kemudian

di dalam prosedur ini terdapat sintak as begin yang digunakan untuk mengawali

eksekusi di dalam prosedur yaitu eksekusi perintah insert into InsertPembelian

values (@KodeDetailPenjualan, @KodePenjualan, @KodeObat, @Hargajual,

@JumlahPembelian). Perintah insert digunakan untuk memasukkan data-data ke

tabel Detail_PenjualanObat dengan nilai-nilai yang terdapat pada variabel

@KodeDetailPenjualan, @KodePenjualan, @KodeObat, @Hargajual,

@JumlahPembelian. Kemudian sintak end digunakan untuk menghentikan semua

eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan perintah berikut:

e) Membuat prosedur InsertDetail_PembelianObat

Page 28

Page 29: Makalah Basis Data II

Penjelasan :

Prosedur InsertDetail_PembelianObat merupakan procedure untuk menginputkan

data tabel Detail_PembelianObat. Variabel parameternya adalah

@KodeDetailPembelian char(4) maksudnya variabel ini memiliki tipe data char

dengan panjang data 4 karakter ,@KodePembelian char(4) maksudnya variabel ini

memiliki tipe data varchar dengan panjang data 4 karakter, @KodeObat char(4)

maksudnya variabel ini memiliki tipe data char dengan panjang data 4 karakter,

@Hargabeli money maksudnya variabel ini memiliki tipe data money,

@JumlahPembelian int maksudnya variabel ini memiliki tipe data integer. Kemudian

di dalam prosedur ini terdapat sintak as begin yang digunakan untuk mengawali

eksekusi di dalam prosedur yaitu eksekusi perintah insert into InsertPembelian

values (@KodeDetailPembelian, @KodePembelian, @KodeObat, @Hargabeli,

@JumlahPembelian). Perintah insert digunakan untuk memasukkan data-data ke

tabel Detail_PembelianObat dengan nilai-nilai yang terdapat pada variabel

@KodeDetailPembelian, @KodePembelian, @KodeObat, @Hargabeli,

@JumlahPembelian. Kemudian sintak end digunakan untuk menghentikan semua

eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan perintah berikut:

Page 29

Page 30: Makalah Basis Data II

Hasil dari penginputan tesebut ialah sebagai berikut :

Page 30

Page 31: Makalah Basis Data II

2) Membuat Prosedur Update tabel

Prosedur update digunakan untuk memperbaharui data-data pada tabel. Sintax

yang digunakan ialah :

CREATE PROC [ EDURE ] Procedure_Name (@Parameter

Tipedataparameter(Panjangparameter),@Parameter n

Tipedataparameter(Panjangparameter))

Begin

UPDATE table_name set Fieldyangdiubahdatanya=@parameter where

fieldyangmemilikinilaiuniq=@parameter

end

Contoh pengimplikasiannya terhadap tabel-tabel dalam database apotik ialah

sebagai berikut :        

a) Membuat prosedur update obat

Penjelasan :

UpdateObat merupakan nama procedure yang dibuat dengan variabel parameternya

adalah @KodeObat char(4) maksudnya variabel ini memiliki tipe data char dengan

panjang data 4 karakter, @HargaSatuan money maksudnya variabel ini memiliki tipe

data money. Kemudian di dalam prosedur ini terdapat sintak as begin yang

digunakan untuk mengawali eksekusi di dalam prosedur yaitu eksekusi perintah

update DaftarObat set HargaSatuan=@HargaSatuan where

KodeObat=@KodeObat. Perintah update digunakan untuk mengubah isi dari

kolom (field) dalam tabel DaftarObat. Pada bagian ini yang diubah adalah data pada

Page 31

Page 32: Makalah Basis Data II

field HargaSatuan, nantinya data pada field ini diganti sesuai dengan nilai yang

diinputkan pada variabel @HargaSatuan. Untuk menentukan obat mana yang akan

diganti harga satuannya digunakan syarat yaitu dimana kodeobat dari field kodeobat

sama dengan nilai variabel yang diinputkan pada variabel @KodeObat. Kemudian

sintak end digunakan untuk menghentikan semua eksekusi. Sedangkan untuk

menjalankan prosedur ini gunakan perintah berikut:

Pengeksekusian :

Tabel awal :

Tabel setelah diupdate :

3) Membuat prosedur Delete table

Prosedur delete digunakan untuk menghapus data pada tabel. Sintax yang

digunakan ialah :

CREATE PROC [ EDURE ] Procedure_Name (@Parameter

Tipedataparameter(Panjangparameter),@Parameter n

Tipedataparameter(Panjangparameter))

Begin

Delete from table_name where

fieldyangmemilikinilaiuniq(primary key)= @parameter

Page 32

Page 33: Makalah Basis Data II

end

Contoh pengimplikasiannya terhadap tabel-tabel dalam database apotik ialah

sebagai berikut :   

a) Membuat prosedur delete DetailPenjualanObat

     

Penjelasan :

DeleteDetailPenjualan procedure untuk mendelete data detailpenjualan yang dibuat

dengan variabel parameternya adalah @Kodedetailpenjualan char(4) maksudnya

variabel ini memiliki tipe data char dengan panjang data 4 karakter. Kemudian di

dalam prosedur ini terdapat sintak as begin yang digunakan untuk mengawali

eksekusi di dalam prosedur yaitu eksekusi perintah delete from

Detail_PenjualanObat where kodepenjualan=@kodepenjualan. Perintah delete

digunakan menghapus baris dari tabel Detail_PenjualanObat, untuk menentukan

baris mana yang akan dihapus digunakan syarat yaitu dimana kodedetailpenjualan

dari field kodedetailpenjualan sama dengan nilai variabel yang diinputkan pada

variabel @Kodedetailpenjualan. Kemudian sintak end digunakan untuk

menghentikan semua eksekusi. Sedangkan untuk menjalankan prosedur ini gunakan

perintah berikut:

Page 33

Page 34: Makalah Basis Data II

Tabel awal :

Tabelhasil :

4) Membuat Prosedur Laporan Pembelian obat pada Apotik selama 1 bulan

Penjelasan :

Prosedur Lappembelianobatperbulan digunakan untuk melihat laporan pembelian

obat pada apotik yang dilakukan pada bulan-bulan tertentu. Apabila dieksekusi

hasilnya nanti akan menampilkan namaobat, jenisobat, namapegawai yang nantinya

ditampilkan sebagai penanggungjawabpembelian, namapemasok, hargasatuan,

jumlahpembelian, tanggalpembelian, totalpembelian yang nantinya ditampilkan

sebagai TotalHargaPembelian.

Lappembelianobatperbulan memiliki variabel parameter yaitu @bulan char(2)

maksudnya variabel ini memiliki tipe data char dengan panjang data 2 karakter.

Page 34

Page 35: Makalah Basis Data II

Kemudian di dalam prosedur ini terdapat sintak as begin yang digunakan untuk

mengawali eksekusi di dalam prosedur yaitu eksekusi perintah :

Select a.NamaObat, b.JenisObat, e.namapegawai as [PenanggungJawabPembelian],

f.namapemasok, d.HargaSatuan, d.JumlahPembelian, c.tanggalPembelian,

c.totalpembelian as [TotalPembelianPerbulan]

From DaftarObat a, Jenis b, Pembelian c, Detail_PembelianObat d, pegawai e,

pemasok f

Where d.KodePembelian=c.kodepembelian and d.kodeobat=a.kodeobat and

a.Kodejenis=b.Kodejenis and c.kodepemasok=f.kodepemasok and

c.kodepegawai=e.kodepegawai and month(c.tanggalPembelian)=@bulan

End

Perintah select digunakan untuk memilih dan menampilkan a.NamaObat,

b.JenisObat, e.namapegawai as [PenanggungJawabPembelian], f.namapemasok,

d.HargaSatuan, d.JumlahPembelian, c.tanggalPembelian, c.totalpembelian as

[TotalPembelianPerbulan] yang terdapat pada tabel DaftarObat a, Jenis b, Pembelian

c, Detail_PembelianObat d, Pegawai e, Pemasok f. Fungsi as digunakan untuk

mengganti tampilan nama atribut dari field.

Pada prosedur ini, digunakan enam buah tabel yaitu DaftarObat dengan aliansinya

yaitu a, Jenis dengan aliansinya yaitu b, Pembelian dengan aliansinya yaitu c,

Detail_PembelianObat dengan aliansinya yaitu d, Pegawai dengan aliansinya yaitu

e,dan Pemasok dengan aliansinya yaitu f. Dalam hal ini kondisi yang digunakan

untuk merelasikan tabel tersebut ialah :

Where d.KodePembelian=c.kodepembelian and d.kodeobat=a.kodeobat and

a.Kodejenis=b.Kodejenis and c.kodepemasok=f.kodepemasok and

c.kodepegawai=e.kodepegawai and month(c.tanggalPembelian)=@bulan. Sintak

and digunakan untuk menghubungkan dua syarat. month(s. tanggalPembelian)

=@Bulan digunakan untuk mendapatkan penghasilan dimana apabila nilai bulan

sama dengan yang diinputkan pada variabel @Bulan perhitungan jumlah

pendapatannya akan dihitung sesuai bulan tersebut. Kemudian sintak end digunakan

untuk menghentikan semua eksekusi. Sedangkan untuk menjalankan prosedur ini

gunakan perintah berikut:

Page 35

Page 36: Makalah Basis Data II

5) Membuat Prosedur Menghitung Jumlah Pembelian Obat pada Apotik

Selama 1 bulan

Penjelasan :

Prosedur pembelianperbulan digunakan untuk melihat total pembelian pada apotik

yang dilakukan pada bulan-bulan tertentu. Apabila dieksekusi hasilnya nanti akan

menampilkan atribut baru yang bernama TotalPembelianPerbulan.

Prosedur pembelianperbulan memiliki variabel parameter yaitu @bulan char(2)

maksudnya variabel ini memiliki tipe data char dengan panjang data 2 karakter.

Kemudian di dalam prosedur ini terdapat sintak as begin yang digunakan untuk

mengawali eksekusi di dalam prosedur yaitu eksekusi perintah :

Select sum(totalpembelian) as [TotalPembelianPerbulan]

From Pembelian

Where month(tanggalPembelian)=@bulan

Page 36

Page 37: Makalah Basis Data II

End

Perintah select digunakan untuk memilih dan menampilkan sum(totalpembelian) as

[TotalPembelianPerbulan]. Perintah sum digunakan digunakan untuk menjumlahkan

totalpembeliann yang terdapat pada tabel Pembelian.

Lalu hasil jumlah ini kemudian akan ditampilkan pada atribut baru yang bernama

TotalPembelianPerbulan hal ini bisa dilakukan dengan menggunakan perintah as

[TotalPembelianPerbulan]. Month(tanggalPembelian) =@Bulan digunakan untuk

mendapatkan penghasilan dimana apabila nilai bulan sama dengan yang diinputkan

pada variabel @Bulan perhitungan jumlah pendapatannya akan dihitung sesuai bulan

tersebut. Kemudian sintak end digunakan untuk menghentikan semua eksekusi.

Sedangkan untuk menjalankan prosedur ini gunakan perintah berikut:

6) Membuat prosedur untuk laporan penjualan obat yang dilakukan selama 1

Bulan

Page 37

Page 38: Makalah Basis Data II

Penjelasan :

Prosedur Lappenjualanobatperbulan digunakan untuk melihat laporan penjualan

obat pada apotik yang dilakukan pada bulan-bulan tertentu. Apabila dieksekusi

hasilnya nanti akan menampilkan namaobat, jenisobat, namapegawai, hargajual,

jumlahpembelian yang nantinya ditampilkan sebagai [totalpembelian], dan

tanggalpembelian dan totalpembayaran yang nantinya ditampilkan sebagai

[Totalhargapenjualan].

Lappenjualanobatperbulan memiliki variabel parameter yaitu @bulan char(2)

maksudnya variabel ini memiliki tipe data char dengan panjang data 2 karakter.

Kemudian di dalam prosedur ini terdapat sintak as begin yang digunakan untuk

mengawali eksekusi di dalam prosedur yaitu eksekusi perintah :

Select a.NamaObat, b.JenisObat, e.namapegawai, d.Hargajual, d.JumlahPembelian

as [TotalPembelian], c.tanggalPenjualan, c.totalpembayaran as

[TotalHargaPenjualan]

From DaftarObat a,Jenis b,Penjualan c,Detail_PenjualanObat d,pegawai e

Where d.KodePenjualan=c.kodepenjualan and d.kodeobat=a.kodeobat and

a.Kodejenis=b.Kodejenis and c.kodepegawai=e.kodepegawai and

month(c.tanggalPenjualan)=@bulan

Group By a.NamaObat, b.JenisObat, d.JumlahPembelian, d.Hargajual,

e.namapegawai, c.tanggalPenjualan,c.totalpembayaran

Perintah select digunakan untuk memilih dan menampilkan a.NamaObat,

b.JenisObat, e.namapegawai, d.Hargajual, d.JumlahPembelian as [TotalPembelian],

c.tanggalPenjualan, c.totalpembayaran as [TotalHargaPenjualan]. Fungsi as

digunakan untuk mengganti tampilan nama atribut dari field.

Pada prosedur ini, digunakan lima buah tabel yaitu DaftarObat dengan aliansinya

yaitu a, Jenis dengan aliansinya yaitu b, Penjualan dengan aliansinya yaitu c,

Detail_PenjualanObat dengan aliansinya yaitu d, dan Pegawai dengan aliansinya

yaitu e. Dalam hal ini kondisi yang digunakan untuk merelasikan tabel tersebut

ialah :

Where d.KodePenjualan=c.kodepenjualan and d.kodeobat=a.kodeobat and

a.Kodejenis=b.Kodejenis and c.kodepegawai=e.kodepegawai and

month(c.tanggalPenjualan)=@bulan

Page 38

Page 39: Makalah Basis Data II

Sintak and digunakan untuk menghubungkan dua syarat. month(s.

tanggalPenjualan) =@Bulan digunakan untuk mendapatkan penghasilan dimana

apabila nilai bulan sama dengan yang diinputkan pada variabel @Bulan maka

transaksi penjualan yang dilakukan pada bulan tersebut akan ditampilkan. Kemudian

sintak end digunakan untuk menghentikan semua eksekusi. Sedangkan untuk

menjalankan prosedur ini gunakan perintah berikut:

7. Membuat Prosedur Menghitung Jumlah Penjualan Obat pada Apotik

Selama 1 bulan

Page 39

Page 40: Makalah Basis Data II

Penjelasan :

Prosedur penjualanperbulan digunakan untuk melihat pendapatan/total penjualan

pada apotik yang dilakukan pada bulan-bulan tertentu. Apabila dieksekusi hasilnya

nanti akan menampilkan atribut baru yang bernama TotalPenjualanPerbulan.

Prosedur penjualanperbulan memiliki variabel parameter yaitu @bulan char(2)

maksudnya variabel ini memiliki tipe data char dengan panjang data 2 karakter.

Kemudian di dalam prosedur ini terdapat sintak as begin yang digunakan untuk

mengawali eksekusi di dalam prosedur yaitu eksekusi perintah :

Select sum(totalpembayaran) as [TotalPenjualanPerbulan]

From Penjualan

Where month(tanggalPenjualan)=@bulan

End

Perintah select digunakan untuk memilih dan menampilkan sum(totalpembayaran)

as [TotalPenjualanPerbulan]. Perintah sum digunakan digunakan untuk

menjumlahkan totalpembayaran yang terdapat pada tabel Penjualan.

Lalu hasil jumlah ini kemudian akan ditampilkan pada atribut baru yang bernama

TotalPenjualanPerbulan hal ini bisa dilakukan dengan menggunakan perintah as

[TotalPenjualanPerbulan]. Month(tanggalPenjualan) =@Bulan digunakan untuk

mendapatkan penghasilan dimana apabila nilai bulan sama dengan yang diinputkan

pada variabel @Bulan perhitungan jumlah pendapatannya akan dihitung sesuai bulan

tersebut. Kemudian sintak end digunakan untuk menghentikan semua eksekusi.

Sedangkan untuk menjalankan prosedur ini gunakan perintah berikut:

Page 40

Page 41: Makalah Basis Data II

8) Membuat prosedur untuk menghitung keuntungan bersih penjualan yang

sudah dilakukan pada bulan tertentu.

Penjelasan :

Prosedur Keuntunganbersih@bulan digunakan untuk melihat pendapatan bersih

atau laba pada apotik yang dididapatkan pada bulan-bulan tertentu. Besar pendapatan

bersih didapatkan dari rumus penjumlahan(sum) hargajual (yang merupakan

hargasatuan (hargapokokpembelian) dikali 10%) dikurang

hargasatuan(hargapokokpembelian) dikalikan jumlahpembelian pada saat transaksi

penjualan sesuai dengan inputan nilai @bulan. Apabila dieksekusi hasilnya nanti

akan menampilkan atribut baru yang bernama KeuntunganPerbulan.

Prosedur Keuntunganbersih@bulan memiliki variabel parameter yaitu @bulan

char(2) maksudnya variabel ini memiliki tipe data char dengan panjang data 2

karakter. Kemudian di dalam prosedur ini terdapat sintak as begin yang digunakan

untuk mengawali eksekusi di dalam prosedur yaitu eksekusi perintah :

Select sum((b.Hargajual-a.Hargasatuan)*b.jumlahpembelian) as [Keuntungan

perbulan]

From daftarobat a, penjualan c, detail_penjualanobat b

Where c.kodepenjualan=b.kodepenjualan and a.kodeobat=b.kodeobat and

Month(c.tanggalpenjualan)=@bulan

Perintah select digunakan untuk memilih dan menampilkan sum((b.Hargajual-

a.Hargasatuan)*b.jumlahpembelian) as [Keuntungan perbulan]. Perintah sum

Page 41

Page 42: Makalah Basis Data II

digunakan digunakan untuk menjumlahkan nilai ((b.Hargajual-

a.Hargasatuan)*b.jumlahpembelian) yang terdapat pada tabel Penjualan dan

daftarobat. Lalu hasil jumlah ini kemudian akan ditampilkan pada atribut baru yang

bernama Keuntungan Perbulan hal ini bisa dilakukan dengan menggunakan

perintah as [Keuntungan perbulan].

Pada prosedur ini, digunakan tiga buah tabel yaitu DaftarObat dengan aliansinya

yaitu a, Penjualan dengan aliansinya yaitu c, Detail_PenjualanObat dengan aliansinya

yaitu b. Dalam hal ini kondisi yang digunakan untuk merelasikan tabel tersebut

ialah :

Where c.kodepenjualan=b.kodepenjualan and a.kodeobat=b.kodeobat and

Month(c.tanggalpenjualan)=@bulan

Sintak and digunakan untuk menghubungkan dua syarat. Month(tanggalPenjualan)

=@Bulan digunakan untuk mendapatkan jumlahkeuntungan dimana apabila nilai

bulan sama dengan yang diinputkan pada variabel @Bulan perhitungan jumlah

keuntungan akan dihitung sesuai transaksi pada bulan tersebut. Kemudian sintak end

digunakan untuk menghentikan semua eksekusi. Sedangkan untuk menjalankan

prosedur ini gunakan perintah berikut:

Page 42

Page 43: Makalah Basis Data II

BAB IV

PENUTUP

4.1.Kesimpulan

Sistem adalah dua bagian atau lebih yang saling berinteraksi untuk mencapai

tujuan tertentu. Memandang secara sistem sangatlah penting karena akan mengubah

cara pemahaman kita menjadi lebih hilistik. Pandangan secara sistem akan mencegah

seseorang dalam sistem akan mencegah seseorang dalam kerumitan sistem

organisasi, menyadari akan tujuan-tujuannya, mengakui keterkaitan organisasi

dengan lingkungannya dan memberikan penilaian tinggi terhadap informasi umpan

balik.

Informasi adalah dua data yang telah diolah menjadi sebuah bentuk yang berarti

bagi penerimanya dan bermanfaat dalam mengambil keputusan saat ini. informasi

adalah data yang telah diproses atau data yang memiliki arti.

Sistem informasi manajemen dapat diartikan sebagai suatu alat untuk

menyajikan informasi dengan cara sedemikian rupa sehingga bermanfaat bagi

penggunanya. Tujuannya adalah untuk menyajikan informasi guna pengambilan

keputusan pada perencanaan, pemrakarsaan, pengorganisasian dan pengendalian

kegiatan operasi subsistem.

Dalam Tab Data Files, terdapat beberapa option yang perlu diperhatikan adalah

sebagai berikut:

File Name dan Location, untuk memberi nama file dan meletakkan file

database tersebut disuatu lokasi folder yang diinginkan.

File growth, mengatur penambahan ukuran file database. Dapat ditetapkan

dengan persentase tertentu atau berdasarkan jumlah megabytes tertentu.

Maximum file size, ukuran file dapat dibatasi pada tingkat tertentu atau

unlimited.

Pada tab Transaction Log terdapat option yang sama dengan tab Data Files.

Apabila membuat database di SQL Server maka akan terdiri dari minimum 2 file

yaitu:

Data File, adalah file untuk menyimpan data.

Page 43

Page 44: Makalah Basis Data II

Transaction Log, adalah file ynag menyimpan histori transaksi dan semua

kejadian di database tersebut. Pada tutorial ini semua option untuk 2 file tersebut

dibiarkan dalam kondisi default.Setelah proses pengisian option selesai, klik OK

dan database baru akan terlihat di EnterpriseManager.

Setiap tabel sebaiknya dilengkapi dengan primary key yang merupakan

identitas unik dari setiap baris data.

4.2.Saran - Saran

Untuk merancang suatu sistem atau untuk mempermudah kinerja suatu sistem

yang belum terkomputerisasi di perlukan perancangan yang matang dan baik

sehingga akan di hasilkan suatu sistem informasi yang dapat di gunakan dan lebih

baik dari sitem terdahulu. Oleh karena itu, untuk merancang suatu sistem informasi

sebaiknya di lakukan dengan perencanaan dan perancangan yang matang terlebih

dahulu.

Page 44

Page 45: Makalah Basis Data II

BAB V

DAFTAR PUSTAKA

Dwi Prasetyo, Didik. 2007. 101 TIP & TRIK Visual Basic 6.0,. Penerbit PT Elex

Media Komputindo, Kelompok Gramedia : Jakarta.

M. J. Alam, Agus. Pemrograman Database dengan Visual Basic. Penerbit PT Elex

Media Komputindo, Kelompok Gramedia : Jakarta.

Christina Sherly. 2009. Basis Data II. Palangka Raya.

Martin Irge, Ir. 2008. 36 Jam Microsoft SQL Server 2000. Jakarta.

Http://Www.Ilmukomputer.Org/Wp-Content/Uploads/2006/09/Krisna-Vb6-01.Zip

Http://Www.Google.Co.Id/Search?

Hl=Id&Q=Konsep+Dasar+Database&Btng=Telusuri+Dengan+Google&Meta=

Cr%3dcountryid

Rusmawan Uus. 2005. Merancang Koneksi Database dalam Visual Basic 6.0.

Jakarta: Penerbit Elex Media Komputindo.

Page 45

Page 46: Makalah Basis Data II

BAB VI

LAMPIRAN

1. Membuat database ApotikBersama

2. Membuat Tabel Jenis

Page 46

Page 47: Makalah Basis Data II

3. Membuat Tabel DaftarObat

4. Membuat Tabel Pegawai

5. Membuat Tabel Pemasok

Page 47

Page 48: Makalah Basis Data II

6. Membuat Tabel Pembelian

7. Membuat Tabel Penjualan

8. Membuat Tabel Detail_PembelianObat

Page 48

Page 49: Makalah Basis Data II

9. Membuat Tabel Detail_PenjualanObat

10. Membuat Prosedur Insert Jenis

Pengexecutannya :

Page 49

Page 50: Makalah Basis Data II

11. Membuat Prosedur Insert Daftar Obat

Pengexecutannya :

12. Membuat Prosedur Insertpemasok

Page 50

Page 51: Makalah Basis Data II

Pengexecutannya :

13. Membuat prosedur InsertPegawai

Pengexecutannya :

Page 51

Page 52: Makalah Basis Data II

14. Membuat prosedur InsertPenjualan

Pengeksekusiannya :

15. Membuat prosedur InsertPembelian

Page 52

Page 53: Makalah Basis Data II

Pengeksekusiannya :

16. Membuat prosedur InsertDetail_PenjualanObat

Pengeksekusiannya :

Page 53

Page 54: Makalah Basis Data II

17. Membuat prosedur InsertDetail_PembelianObat

Pengekesekusiannya :

Page 54

Page 55: Makalah Basis Data II

Hasil dari penginputan tesebut ialah sebagai berikut :

Page 55

Page 56: Makalah Basis Data II

17. Membuat prosedur update obat

Pengeksekusian :

Tabel awal :

Tabel setelah diupdate :

Page 56

Page 57: Makalah Basis Data II

18. Membuat prosedur delete DetailPenjualanObat

     

Pengeksekusian :

Tabel awal :

Tabelhasil :

Page 57

Page 58: Makalah Basis Data II

19. Membuat Prosedur Laporan Pembelian obat pada Apotik selama 1 bulan

Pengeksekusian :

Page 58

Page 59: Makalah Basis Data II

20. Membuat Prosedur Menghitung Jumlah Pembelian Obat pada Apotik

Selama 1 bulan

Pengeksekusian :

21. Membuat prosedur untuk laporan penjualan obat yang dilakukan selama 1

Bulan

Page 59

Page 60: Makalah Basis Data II

Pengeksekusian :

22. Membuat Prosedur Menghitung Jumlah Penjualan Obat pada Apotik

Selama 1 bulan

Pengeksekusian :

Page 60