1.
Basis Data dan
Sistem Basis Data
Basis Data adalah suatu kumpulan data terhubung yang
disimpan secara bersama-sama pada suatu media, yang diorganisasikan berdasarkan
sebuah skema atau struktur tertentu, dan dengan software untuk melakukan
manipulasi untuk kegunaan tertentu.
Sistem Basis Data
merupakan sekumpulan basis data dengan para pemakai yang menggunakan basis data
secara bersama-sama, personil yang merancang dan mengelola basis data,
teknik-teknik untuk merancang dan mengelola basis data, serta sistem komputer
yang mendukungnya.

2.
Integritas Data
Integritas data harus
dijaga di level database karena akan sulit dan mahal jika menjaga integritas
data di level aplikasi. Selain itu, menemukan bugs data yang tidak valid pada
database sulit dillakukan. Berikut adalah cara-cara menjaga integritas data.
Jenis-jenis
integritas data (via SQL):
·
CREATE
DOMAIN yaitu untuk membuat tipe data baru. Misal: tipe Nilai sebagi integer
dengan value antara 0 -100
·
NOT
NULL yaitu field data harus diisi. Misal: NIM, Nama
·
UNIQUE
yaiitu field data harus unik. Misal: No HP
·
PRIMARY
KEY yaitu field data sebagai identitas record. Misal: NIM
·
CHECK
yaitu batasan-batasan isi field data. Misal: 0<= umur <= 120
REFERENTIAL INTEGRITY
Integritas pada entitiy setiap table.
Syntax contoh untuk
NOTNULL, UNIQUE, PRIMARY KEY, dan CHECK.
create table dosen (
nip char(9) not null, kode_dosen char(5) not null, nama varchar(20) not null,
jum_anak small int, nama_pasangan varchar(20), tgl_masuk date, tgl_pensiun
date,
Constraint
Constraint merupakan suatu aturan yang membatasi jenis data yang
diizinkan untuk dimasukkan kedalam tabel.
Contoh constraint:
constraint pk1 primary key (nip), constraint un1
unique (kode_dosen), constraint c1 check (jum_anak between 0 and 15),
constraint c2 check (tgl_masuk < tgl_pensiun));
• CHECK (gaji > 0 OR komisi >= 0)
• CHECK (gaji +
komisi <= 5000)
• CHECK (lokasi IN
(‘JAKARTA', ‘BANDUNG'));
3.
Transaksi
Transaksi dalam dunia
IT berarti suatu aksi/perbuatan yang dilakukan oleh program bertujuan untuk
mengakses atau mengubah data yang terdapat di database. Transaksi yang berlangsung
tersebut, hanya mengenal dua hasil, yaitu berhasil secara keseluruhan, atau
gagal sama sekali. Transaksi tersebut berarti tidak boleh berhasil
setengah-setengah, harus berhasil secara keseluruhan.
Tujuan dari transaksi tersebut adalah untuk mencegah
database dari kehilangan atau kerusakan data.
4 elemen penting pada
transaksi, yaitu :
·
Atomicity
: Ini berarti bahwa transaksi haruslah berhasil secara keseluruhan, atau gagal
sama sekali.
·
Consistency
: Menjaga konsistensi data di database
·
Isolation
: Transaksi yang dilakukan secara bersamaan haruslah bisa dimulai dan bisa
berakhir.
·
Durability
: Setelah transaksi berakhir, data yang berubah tidak boleh kembali ke data
awal walaupun sistem mati.
Dua Operasi Penting Transaksi
• COMMIT
Memberi tanda bahwa
transaksi telah selesai.Update dibuat permanen (bahkan jika setelah commit
terjadi kegagalan system).
• ROLLBACK
Memberi
tanda bahwa transaksi GAGAL.Semua update harus di-undo
4.
Concurrency
Proses-Proses yang
disebut konkurensi apabila proses-proses (lebih dari satu proses) berada pada
saat yang sama. Karena proses tersebut bisa saja tidak saling bergantung tetapi
saling berinteraksi.
Masalah Concurrency
1. Lost
update/kehilangan modifikasi.
Masalah operasi
update yg sukses dari seorang pengguna kemudian ditimpali oleh operasi update
dari pengguna lain
2. Uncommited
dependency/ketergantungan pada saat belum commit
Permasalahan timbul
pada saat transaksi dibiarkan melihat hasil dari transasksi lain yang belum
commit.
3. Inconsistent
analysis/analisis yang tidak konsisten
Permasalahan timbul
apabila suatu transaksi membaca beberapa nilai tetapi transasksi berikutnya
memodifikasi salah satu nilai.
Pengontrollan Concurrency
Lebih dari satu
pengguna (pada DBMS terpusat) dapat melakukan operasi pada basis data secara
simultan. Jika tidak dikontrol, hal ini dapat menyebab kan interferensi satu
sama lain sehingga basis data menjadi tidak konsisten. Untuk mencegahnya, DBMS
mengimple-mentasikan pengontrolan konkurensi. Implementasi pengamanan sangat
penting untuk menjamin sistem tidak diinterupsi dan diganggu. Proteksi dan
pengamanan terdapat perangkat keras dan sistem operasi yang sama pentingnya
5.
Back-end Programming
Backend Programming
adalah code yang tidak terlihat oleh user dan bekerja dibelakang layar atau
server.
Stored Procedure
Stored Procedure
adalah sekumpulan perintah SQL yang disusun dalam sebuah prosedur yang memiliki
nama dan fungsi tertentu.
Struktur badan
procedur secara umum :
CREATE OR REPLACE PROCEDURE <nama procedure> AS /*Deklarasi variable, type, dan local subprogram*/BEGIN /*Bagian utama prosedur*/EXCEPTION /*Penangan error*/END <nama procedur>;
Function
Selain Stored
Procedure, terdapat juga Function. Sedikit berbeda dengan Stored Procedure,
disini ada nilai yang dikembalikan.
Struktur badan
Function secara umum:
CREATE OR REPLACE FUNCTION <nama fungsi> RETURN <tipe data>AS /*Deklarasi variable, type, dan local subprogram*/BEGIN /*Bagian utama fungsi*/EXCEPTION /*Penangan error*/RETURN(<Nilai yang dikembalikan>);END <nama fungsi>;/
Untuk mengeksekusi stored procedure dan fungsi gunakan
perintah :
EXECUTE <nama procedure/fungsi>;Sedangkan untuk menghapusnya menggunakan perintahDROP PROCEDURE/FUNCTIOM <nama procedure/function>;
Trigger
Secara keseluruhan
trigger hampir sama dengan Procedure dan Function, hanya saja untuk Trigger
dioperasikan secara otomatis ketika terdapat aktivitas statement-statement SQL
seperti Insert, Update dan Delete. Trigger ini bisa diaktivasi sebelum atau pun
sesudah terjadinya satatement-statement tersebut.
Struktur badan
Trigger secara umum:
Trigger ini memiliki status apakah dia aktif atau
nonaktif. Untuk mengubah status Trigger berikut sintaksnya :
ALTER TRIGGER
<nama_trigger> DISABLE | ENABLE;
dimana DISABLE untuk
menonaktifkan Trigger, dan ENABLE untuk mengaktifkan Trigger.
Sintaks untuk
menghapus Trigger :
DROP TRIGGER
<nama_trigger>;
6.
XML
XML (extendend Markup Languange) adalah bahasa markup yang digunakan untuk
menyimpan data (tidak ada program) dan tidak tergantung dengan tools tertentu
(seperti editor,dbms,compiler,dsb). Jika demikian, lalu digunakan untuk apa
dokumen XML ini?
XML adalah merupakan suatu bahasa markup. Markup yaitu bahasa yang
berisikan kode-kode berupa tanda-ntanda tertentu dengan aturan tertentu untuk
memformat dokumen teks dengan tag sendiri agar dapat dimengerti.
Perbedaan antara XML dan HTML
Perlu di ingat bahwa:
XML bukan merupakan
pengganti HTML.
XML dirancang untuk
transportasi dan menyimpan data, dengan fokus pada apa data.
HTML dirancang untuk
menampilkan data, dengan fokus pada bagaimana data terlihat.
HTML adalah tentang menampilkan informasi, sedangkan XML adalah membawa
informasi tentang.
Dokumen XML dapat digunakan untuk berbagai macam tujuan, seperti:
- Sebagai penyimpan data (database) yang mudah dibaca oleh user karena
disimpan dalam bentuk teks.
- Standard transfer data, dapat digunakan untuk pengiriman data transaksi
antar perusahaan, atau mentransfer data dari DBMS yang berbeda (mis: Oracle ke
SQL Server).
- Sebagai acuan membuat bahasa baru, seperti WML (Wireless Markup Language)
yang digunakan pada mobile device dengan protokol WAP, atau VoiceXML yang
digunakan sebagai bahasa markup untuk pengenalan suara, dialog, aplikasi
interaksi respon suara maupun DTMF (seperti aplikasi pengisian pulsa atau call
center), dan sebagainya.
- Sebagai file konfigurasi, di Java dokumen-dokumen XML sering kita jumpai
seperti file server.xml dan web.xml yang digunakan Tomcat, atau
perintah-perintah query yang disimpan dalam file XML yang dipakai pada
framework iBatis atau Hibernate.
Sejauh mana perkembangannya?XML menjadi dasar dari beberapa bahasa markup
yang telah sedang berkembang sampai saat ini, seperti: XHTML (perbaikan dari
HTML), VoiceXML (bahasa untuk aplikasi suara, telepon), XForms (form pada web
yang dapat digunakan pada berbagai macam jenis browser, seperti: desktop, PDA ,
handphone, kertas), XPath, XPointer, XSL dan XSLT (transformasi dan presentasi
XML).
Referensi :
[2] Powerpoint Yudi Wibisono, Integritas
data,Transaksi,Concurency
[3] Perkuliahan sistem basis data oleh Budi Laksono
Putro






