Minggu, 11 Oktober 2009

rangkuman basis data







NAMA : BENI ARBIANTO

NPM : 40208243

KELAS :2DA04

PENGANTAR BASIS DATA

Latar Belakang Basis Data

Basis data terdiri dari dua kata yautu basis dan data basis daoat di artikan sebagai tempat berkumpul,markas atu saragan,sedang kan data suatu fakta dari dunia nyata yang mewakili suatu objek seperti kaset (lagu,penyanyi, pencipta dan lain – lain) atau kendaraan (mobil, motor, bus, dan lain-lain)

Pemanfaatan Basis Data

v kecepatan dan Kemudahan

v efisien ruang penyimpanan

v keakuratan

v ketersediaan

v keamanan

v pemakain bersama

Penerapan Basis Data

Pemanfaatan perangkat keras komputer di dalam sebuah porganisasi/perusahaan atau perorangan yang senantiasa berhubungan dengan basis data biasanya digunakan untuk pengolaan sistem informasi,

Penerapan basis data ini dapat dilakukan dengan dua pendekatan yaitu pendekatan dengan menggunakan pemrosesan file yang merupakan pendekata manajemen tradisional dan pemrosesan basis data yang merupakan perkembangan dari pendekatan yang pertama

Pemrosesan File

Pemrosesan file didefinisikan sebagai kumpulan dari program aplikasi yang melayani pengguna akhir untuk menghasilkan sebuah laporan dimana susunan data di dalam file direncancang untuk satu progran aplikasi

Pendekatan ini di dalam suatu sistem basis data merupakan pendekatan manajeman tradisional di mana organisasi atau perusahaan yang tersiri dari sub-sub bagian membuat suatu aplikasi dan basis data sesuai dengan keperluan bagianya sendiri,

Pemrosesan Basis Data

Pemrosesan basis data didefinisikan sebagai sekumpulan data yang terintegrasi dan dolah untuk memenuhi kebutuhan para pengguna di dalam suatu organisasi. Basis data adalah kumpulan dari file data yang besar di mana dapat digunakan secara simultan oleh banyak departemen dan pengguna.

Pengguna secara bersama menimbulkan banyak perubahan yang akan terjadi pada suatu basis data yang digunaka, jika dibandingkan dengan pendekatan manajemen file. Standaardasasa data, suatu file data yang disimpan di dalam satu basis data strukturnya harus dibuat sama, sesuai dengan kebutuhan para pengguna disemua bagian perusahaan.

Konsep Dasar Basis Data

Pada suatu irganisasi atu perusahaan, basis data merupakan susunan record data operasional lengkap dari suatu organisasi/perusahaan, yang diorganisir dan di simpan secara terintegrasi dengan menggunakan metode tertentu pada komputer sehingga mampu memenuhi informasi optimal yang diperlukan oleh pemakai dan Database Msnsgement System (DBMS)

DBMS itu sendiri adalah sebuah perangkat lunak yang mengatur dan mengontrol akses dari dan ke basis data dan sebuah program berinteraksi dengan basis data,

Komponen Sistem Basis Data

Komponen sistem basis data terdiri atas

1. Data

Disimpan secara terintegrasi, artinya basis data merupakan gabungan dari berbagai macam file aplikasi yang berbeda yang disusun dengan menghilangkan bagian-bagian yang rngkap.

2. Perangkat Keras

Mencangkup peralatan atau perangkat komputer yang digunakan untuk pengelolaan sistem basis data. Contoh : alat input/output, komunikasi data dan sebagiany

3. Perangkat Lunak

Sebagai penghubung antara pengguna dan basis data. Contoh

DBMS.

4. Pengguna

Dibagi menjadi 4 katagori:

a. System Engineer

Tenaga ahli yang bertanggung jawab atas pemasangan sistem basis data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari sistem tersebut

b. Database Administrator(DBA)

Tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya.

Tugas DBA

v Mengontrol DBMS dan Perangkat linak lainya

v Memonitor siapa yang mengakses basis data

v Mengatur pemakaian basis data

v Memeriksa security, integrity,recorvery, dan concurrency

Program Utility yang digunakan oleh DBA :

v Loading Routines

Membangun versi utama dari basis data

v Reorganization Routines

Mangatur / mengorganisasikan kembali basis data

v Journaling Routines

Menempatkan kembali data, sebelum terjadinya kerusakan

v Statistical Anilysis Routines

Membantu memonitor kehadalan sistem

c. Programmer

Pengguna yang yang berinteraksi dengan basis data melalui Data Menipulation Language (DML), yang disertakan dalam program yang ditulis dalam bahasa pemograman induk

(seperti C,Pascal,Cobol,dan lain-lain).

d. Pengguna Akhir

Casual User(penggunaan mahir)

v Penggunaan yang berinteraksi dengan system tanpa menulis modul program. Mereka menyatakan queri

(untuk akses data) dengan bahasa queri yang telah disediakan oleh DBMS.

v End User/Naive User(pemakain umum)

Penggunaan yang berinteraksi dengan system basis data melalui pemanggilan satu program aplikasi permanent (Executable program) yang telah ditulis atau disediakan sebelunya

v Sepeciallized/Sophisticated User (penggunaan khusus)

Penggunaan yang menulis aplikasi basis data non konvenisional, tetapi untuk keperluan-keperluan khasus seperti aplikasi Artificial Intelligence (AI),system pakar,pengolahan citra dan lain-lain.

Beberapa Istilah yang Digunakan pada Basis Data

Berikut ini adalah istilah-istilah yang digunakan pada basis data:

1. Enterprise

Enterprise merupakan suatu bentuk organisasi seperti: Bank, Universitas, Rumah Sakit, Pabrik dan sebagianya, data yangdisimpan dalam basis data merupakan data operasional dari suatu Enterpris.

Contoh data operasional:

- data keuangan

- data mahasiswa

- data pasien

2. Entity

Entitas adalah suatu objek yang dapat dibedakan dari lainya yang dapat diwujudkan dalam basis data.

Contoh Entitas dalam lingkungan Bank terdiri dari :

- Nasabah

- Simpanan

- Hipotek

Contoh Entitas dalam lingkungan Pabrik terdiri dari :

- Supplier

- Part

- Shipment

Kumpulan dari entitas disebut entity set (himpunan entitas).

Contoh : semua nasabah, semua supplier.

3. Atriibute (atribut)

Atribut adalah karakteristik dari entitas tersebut. Contoh Entitas Nasabah,atributnya terdiri dari : Kode Nasabah, Nama nasabah, Alamat Nasabah.

4. Data Value (niali data)

Nilai data meruoakan isi data / informasi yang tercakup dalam setiap elemen data. Contoh,atribut nama nasabah dapat berisi

Nilai data : Nina, Rika, Titin dan Sebagainya.

5. Key data elemen (kunci elemen data)

Tanda pengenal yang secara unik mengidentifisikan entitas dari suatu kumpulan entitas. Contoh Entitas Nasabah yang mempunyai atribut –atriburt kode nasabah, nama nasabah, alamat nasabah dan sebagainya.

6. Reckord Data

Kumpulan isi elemen data (atribut) yang saling berhubungan.

Contoh kumpulan atribut Kode Nasabah, Nama Nasabah, Alamat Nasabah

Keuntungan dan Kerugian Basis Data

Keuntungan Pemakaian Basis Data

Keuntungan pemakaian basis data adalah :

1. terkontrolnya kerangkapan data

- Pada non basis data

Setiap program aplikasi mempunyai file sendiri-sendiri sehingga banyak field yang terulang kembali pada file lain.

- Basis Data

hanya menampilkan satu kali saja field yang sama yang dapt dipakai o;eh semua aplikasi yang memerlikan

2. Terpeliharanya keselarasan (kekonsistenan) data apabila ada perubahan data pada aplikasi yang berbeda maka secara otomatis perubahan itu berlaku untuk keseluruhan

3. Data dapat dipakai secara bersama

Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi secara bacth maupun on-line pada saat bersamaan.

Kerugian Pemakaian Basis Data

Kerugian dari pemakaian basis data :

1. Storage(tempat penyimpanan) yang digunakan besar kompleksitas

2. di butuhkan tenaga yang terampil dalam pengolahan data

3. perangkat lunaknya mahal

4. kerusakan pasa sistem basis data mempengaruhi departemen lain yang terkait

LINGKUNAGAN BASIS DATA

RSITEKTUR / ABSTRAKSI BASIS DATA

Ada 3 tingkat dalam arsitektur basis data yang bertujuan membedakan cara pandang pemakai (user) terhadap basis data.

  1. Tingkat Penampakan / Eksternal (View Level)

Level tertinggi dari abstraksi data. Di level ini hanya menunjukkan sebagian saja dari basis data yang dapat dilihat dan dipakai, yaitu hanya basis data yang relevan bagi seorang pemakai tertentu.

  1. Tingkat Logik (Conceptual Level)

Level ini menggambarkan data apa (what) yang sebenarnya disimpan dalam basis data dan hubungannya dengan data yang lain.

Hal-hal yang digambarkam dalam level conceptual adalah:

  • Semua entitas beserta atribut dan hubungannya
  • Batasan data
  • Informasi semantik tentang data
  • Keamanan dan integritas informasi.

  1. Tingkat Fisik (Internal Level)

Merupakan level terendah, yang menunjukkan bagaimana (how data disimpan secara fisik di dalam storage.

Tingkat internal memperhatikan hal-hal berikut ini:

  • Alokasi ruang penyimpanan data dan indeks
  • Deskripsi record utk penyimpanan (dg ukuran penyimpanan data)
  • Penempatan record
  • Penempatan data dan teknik encryption.

Tingkatan Arsitektur Basis Data


DATA INDEPENDENCE

Tujuan utama dari arsitektur basis data adalah memelihara kemandirian data (data independence). Artinya, perubahan pada satu level tidak mempengaruhi level yang lain.

Metode mengubah pola data dari isi data tersebut dan cara menyimpannya, sehingga perubahan tersebut tidak menyebabkan suatu program aplikasi ditulis kembali Ada 2 jenis data independence:

1. Physical Data Independence : merubah level internal tanpa mengganggu skema conceptual atau eksternal.

2. Logical Data Independence : merubah level conceptual tanpa menggangu skema eksternal.

Prinsip ini harus diterapkan dalam pengelolaan sistem basis data dengan alasan:

1. DBA dapat mengubah isi, lokasi, perwujudan dalam organisasi basis data tanpa mengganggu program aplikasi yang sudah ada.

2. Pabrik/software pengelolaan data datap memperkenalkan produk-produk baru tanpa mengganggu program aplikasi yang sudah ada.

3. Untuk memindahkan perkembangan program aplikasi.

4. Memberikan fasilitas pengontrolan terpusat oleh DBA.

BAHASA DALAM BASIS DATA (DATABASE LANGUAGE)

Dikenal 2 bentuk bahasa:

Data Definition Language (DDL)

Untuk mendefinisikan struktur/skema basis data , di dalamnya termasuk record, elemen data , kunci elemen, dan relasinya.

  1. Data Manipulation Language (DML)

Bahasa yang memperbolehkan user untuk mengakses atau memanipulasi data

Ada 2 jenis DML:

  1. Procedural, mensyaratkan user menentukan data apa yang diinginkan serta bagaimana mendapatkannya.
  2. Non Procedural, membuat user dapat menentukan data a[a yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.

Manipulasi data dapat berupa:

    • Penyisipan/penambahandata baru ke basis data
    • Penghapusan data dari basis data
    • Pengubahan data di basis data
    • Mengambil informasi yang tersimpan di basis data

MODEL DATA

Adalah sekumpulan konsep untuk menerangkan data, hubungan antar data, dan batasan-batasandatadalam suatu organisasi.

Untuk menggambarkan datapada tingkat eksternal dan konseptual digunakan model data berbasis objek atau berbasis record.

  1. Model Data Berbasis Objek.

Menggunakan konsep entitas, atribut dan hubungan antar entitas.

Beberapa model data berbasis objek:

  • entity-relationship
  • semantic
  • functional
  • object-oriented.

  1. Model Data Berbasis Record.

Pada model ini, database terdiri dari sejumlah record dalam bentuk yang tetap yang dapat dibedakan dari bentuknya. Ada 3 macam jenis model berbasis record, yaitu:

    • Model data relasional (relational)
    • Model data hierarki (hierarchical)
    • Model data jaringan (network)

CON TOH BASIS DATA

Objek yang dipakai

1. Petugas
2. Pasien
3. Dokter
4. Ruang


Penentuan entitas

1. Petugas : Menyimpan informasi identitas dari petugas jaga
2. Pasien : Menyimpan informasi identitas dari pasien
3. Dokter : Menyimpan informasi identitas dari dokter
4. Ruang : Menyimpan informasi identitas dari ruang
5. Rawat inap : Menyimpan informasi apabila terdapat pasien yang perlu rawat inap
6.
Pembayaran : Menyimpan informasi dari administrasi pembayaran pasien

Penentuan atribut

1. Petugas : kd_petugas char(10) primary key, nama_petugas varchar(30), alamat_petugas varchar(50),
jam_jaga char(15)

2. Pasien : kd_pasien char(10) primary key, kd_dokte char(10) foreign key, nama_pasien varchar(30),
alamat_pasien varchar(50), tanggal_datang char(15), keluhan varchar(50)

3.
Dokter : kd_dokter char(10) primary key, nama_dokter varchar (30),alamat_dokter varchar(50),
spesialisasi_dokter varchar(20)

4.
Ruang : kd_ruang char(10) primary key, nama_ruang varchar(30), nama_gedung varchar(30)

5. Rawat inap : kd_rawat_inap char(10) primary key , nama_pasien varchar(30) foreign key, kd_ruang
varchar(30) foreign key

6. Pembayaran : kode_pembayaran char(10) primary key, kd_pasien char(10), kd_petugas char(10),
jumlah_harga varchar(30)

Hubungan atau Relasi


Petugas melayani pembayaran pasien
Tabel utama: petugas
Tabel kedua: pembayaran
Relationship: One-to-many (1:M)
Attribute penghubung: kd_petugas (FK kd_petugas di pembayaran )

Pasien membayar pada tabel pembayaran
Tabel utama: pasien
Tabel kedua: pembayaran
Relationship: One-to-one (1:1)
Attribute penghubung: kd_pasien (FK kd_pasien di pembayaran )

Dokter digunakan untuk pasien
Tabel utama: dokter
Tabel kedua: pasien
Relationship: One-to-many (1:M)
Attribute penghubung: kd_dokter (FK nama_dokter di pasien )

Pasien melakukan rawat inap
Tabel utama: pasien
Tabel kedua: rawat_inap
Relationship: One-to-one (1:1)
Attribute penghubung: kd_pasien (FK kd_pasien di rawat_inap )

Ruang digunakan untuk rawat_inap
Tabel utama: ruang
Tabel kedua: rawat_inap
Relationship: One-to-one (1:1)
Attribute penghubung: kd_ruang (FK kd_ruang di rawat_inap)


Berikut adalah kode progrem untuk masing- masing tabel



create database rumahsakit

create table petugas
(
kd_petugas char(10)constraint
pk_petugas_kd_petugas primary key not null,
nama_petugas varchar(30),
alamat_petugas varchar(50),
jam_jaga varchar(30)
);

create table dokter
(
kd_dokter char(10)constraint
pk_dokter_kd_dokter primary key not null,
nama_dokter varchar(30),
alamat_dokter varchar(50),
spesialisasi_dokter varchar(30),
);

create table pasien
(
kd_pasien char(10)constraint
pk_pasien_kd_pasien primary key not null,
kd_dokter char(10) constraint
fk_pasien_kd_dokter foreign key
references dokter(kd_dokter) on delete cascade on update cascade,
nama_pasien varchar(30) not null,
alamat_pasien varchar(50),
tgl_datang varchar(30) not null,
keluhan varchar(50)
);

create table ruang
(
kd_ruang char(10)constraint
pk_ruang_kd_ruang primary key not null,
nama_ruang varchar(30),
nama_gedung varchar(50),
);

create table pembayaran
(
kd_pembayaran char(10)constraint
pk_pembayaran_kd_pembayaran primary key not null,
kd_petugas char(10) constraint
fk_pembayaran_kd_petugas foreign key
references petugas(kd_petugas) on delete cascade on update cascade,
kd_pasien char(10) constraint
fk_pembayaran_kd_pasien foreign key
references pasien(kd_pasien)on delete cascade on update cascade,
jumlah_harga varchar(30)
);

create table rawat_inap
(
kd_rawatinap char(10)constraint
pk_rawat_inap_kd_rawatinap primary key not null,
kd_ruang char(10) constraint
fk_rawat_inap_kd_ruang foreign key
references ruang(kd_ruang) on delete cascade on update cascade,
kd_pasien char(10) constraint
fk_rawat_inap_kd_pasien foreign key
references pasien(kd_pasien)on delete cascade on update cascade
);