Posted by : Muhammad Anam
Data sublanguage terdiri
dari dua bagian yaitu Data Definition
Language (DDL) dan Data Manipulation Language
(DML).
DDL
digunakan
secara
spesifik untuk skema database, dan DML digunakan untuk membaca
dan memperbarui database.
Bahasa
ini
disebut
sebagai
data sublanguage karena tidak memasukkan
bentuk pengulangan dan kondisional yang disediakan oleh bahasa pemrograman tingkat
tinggi. Banyak DBMS mempunyai fasilitas
untuk memasukkan sublanguage ke dalam bahasa pemrograman tingkat tinggi seperti COBOL, Fortran,
Pascal, C, C++, Java, Visual Basic,
dll.
Data Definition
Language (DDL)
DDL
adalah sebuah bahasa yang membolehkan DBA atau pemakai untuk menggambarkan dan menamai sebuah entity, attribute, dan relationship yang dibutuhkan oleh
aplikasi, bersama dengan suatu associated
integrity dan security
constraint.
Hasil
dari kompilasi
statement DDL adalah himpunan tabel yang tersimpan pada kumpulan file tertentu yang disebut sebagai system catalog. System catalog berintegrasi dengan
meta-data, di mana data tersebut
menjelaskan obyek-obyek di dalam database dan mempermudah pengaksesan serta manipulasi objek. Meta-data berisi definisi dari record, data
item, dan obyek-obyek lainnya yang dibutuhkan oleh DBMS. DBMS biasanya memeriksa system
catalog sebelum data aktual diakses
pada database. Data dictionary dan
data directory biasanya digunakan untuk menggambarkan system
catalog,
meskipun data dictionary biasanya
lebih banyak digunakan pada sistem perangkat
lunak umum dibandingkan dengan DBMS.
Data
Manipulation Language (DML)
DML
adalah sebuah bahasa yang menyediakan
sejumlah operasi yang mendukung
proses manipulasi data dasar yang ada
pada database.
Proses manipulasi data yang biasanya digunakan :
• Memasukkan data baru ke dalam database.
• Memodifikasi data yang tersimpan dalam database.
• Mengambil
data yang terdapat dalam database.
• Menghapus data dari database.
Oleh
karena itu, salah satu fungsi utama
DBMS adalah mendukung DML yang dapat
digunakan oleh pemakai
untuk
membangun statement
agar manipulasi data dapat terjadi. Manipulasi
data berlangsung pada internal, conceptual,
dan external level. Bagian dari DML yang melibatkan pengambilan data disebut query
language.
DML
dibedakan menurut cara pengambilan data, yaitu procedural dan
non- procedural. Perbedaan utama antara kedua DML bahwa procedural menjelaskan bagaimana cara mendapatkan
hasilnya sedangkan non-procedural menjelaskan hasil apa yang akan didapatkan.
Database
Application Lifecycle
Sistem
informasi adalah sumber yang dapat mengumpulkan, mengelola, mengatur, dan membagi segala informasi untuk organisasi. Menurut Connolly (2002, p270) sejak tahun 1970, sistem database telah menggantikan penggunaan file-based system sebagai bagian sistem informasi dari perusahaan. Oleh karena
itu, banyak organisasi mendirikan
bagian yang berfungsi
khusus sebagai data administration (DB) dan database administration (DBA), yang bertanggung jawab untuk mengelola dan mengatur data perusahaan dan database
perusahaan.
Sistem informasi
berbasis
komputer terdiri dari sebuah
database,
piranti
lunak database, piranti lunak aplikasi, perangkat keras komputer, dan
pemakaian perseorangan dan
perkembangan sistem.
Komponen terpenting dari sistem
informasi adalah database. Pemakaian dan
perkembangan dari database harus
memenuhi kebutuhan terbesar
dari perusahaan. Sistem
Basisdata adalah penerapan database ke dalam sistem
informasi
Tingkatan
dari information systems lifecycle
atau software development lifecycle (SDLC) terdiri dari perencanaan, analisis kebutuhan, perancangan, pembuatan prototype, implementasi, testing, konversi, dan operasi
pemeliharaan.
Tingkatan dari database application lifecycle memiliki bentuk yang tidak kaku,
tetapi mengikuti bentuk dari bentuk semula yaitu feed back loops.
Untuk aplikasi
database kecil, dengan jumlah pemakai yang kecil, siklus
hidup yang diperlukan
tidak terlalu kompleks.
Meskipun begitu, ketika merancang database aplikasi menengah
ke atas dengan jumlah pemakai dari 10
hingga 1000, menggunakan ratusan query dan program
aplikasi, siklus hidup dapat menjadi sangat kompleks.
Langkah-langkah dalam siklus hidup database aplikasi :
• Database planning, adalah merencanakan bagaimana setiap langkah dapat dijalankan seefisien dan seefektif mungkin.
• System definition, adalah menspesifikasi ruang lingkup
dan batasan dari aplikasi database, pemakai, dan area aplikasi.
• Requirement
collection
and
analysis,
adalah
analisa
dan
pengumpulan
kebutuhan-kebutuhan dari pemakai dan
area aplikasi.
• Database
design, adalah perancangan
conceptual, logical, dan physical dari
database.
• DBMS selection, adalah memilih
DBMS
yang
cocok
untuk
aplikasi
database.
• Application design, adalah merancang
antarmuka pemakai dan program
apikasi yang menggunakan dan memproses database.
• Prototyping, adalah
membuat sebuah model kerja dari aplikasi database yang membolehkan
perancang atau pemakai untuk memvisualisasikan dan mengevaluasi bagaimana sistem yang dibuat akan berjalan.
• Implementation,
adalah membuat definisi external, conceptual, dan internal database dan aplikasi program.
• Data conversion
and loading, adalah memasukkan data dari sistem lama ke sistem
baru.
• Testing, adalah aplikasi database akan diuji untuk mendapatkan kesalahan dan divalidasi dengan kebutuhan
yang dispesifikasi pemakai.
• Operational maintenance, adalah aplikasi database telah
diimplementasikan sepenuhnya. Sistem tersebut akan diawasi dan
dirawat
berkala. Ketika dibutuhkan, kebutuhan baru dapat ditambahkan ke dalam aplikasi database melalui
langkah-langkah siklus hidup.
Normalisasi
Normalisasi adalah sebuah teknik untuk menghasilkan sebuah relasi dengan properti
yang diinginkan sesuai dengan kebutuhan
data dari suatu perusahaan. Menurut Connolly (2002, p376) proses normalisasi pertama kali dikembangkan
oleh E. F. Cood. Normalisasi
seringkali dilakukan dengan cara menjalankan
serangkaian tes pada relasi untuk menentukan
apakah itu dapat memenuhi kebutuhan sesuai dengan bentuk normal.
Proses
normalisasi merupakan metoda yang
mengidentifikasi relasi berdasarkan primary key atau candidate key dan ketergantungan fungsional di antara atribut-atributnya. Proses ini juga berguna
untuk menghindari anomaly update. Anomaly update bisa terjadi karena adanya duplikasi
data.
Urutan proses dari normalisasi berdasarkan urutannya :
• Unnormalized Form (UNF)
Ini merupakan sebuah tabel yang masih memiliki satu atau lebih kumpulan
data yang berulang.
• First Normal Form (1NF)
Pada tahap
ini
data
yang
berada
dalam
setiap
kolom
dan
baris
dibuat
bernilai tunggal. Ini dilakukan dengan cara menghilangkan grup data yang berulang dengan memasukkan data yang cocok pada kolom yang kosong dari baris yang
memiliki data berulang tersebut.
• Second Normal Form (2NF)
Tahap ini berdasarkan pada konsep full functional dependency. Full functional dependency mengidentifikasi bahwa jika A dan B adalah atribut dari sebuah relasi, B memiliki full functional dependency terhadap A jika B memiliki ketergantungan fungsional terhadap A, tapi tidak pada subset dari A. Jadi definisi dari 2NF adalah relasi yang 1NF dan setiap atribut yang
bukan primary key memiliki full functional dependency terhadap primary
key.
• Third Normal Form (3NF)
Ini adalah relasi yang sudah dalam
bentuk 1NF dan 2NF, dan dimana tidak ada atribut yang
bukan
primary
key
memiliki
transitive
dependency
terhadap primary key.
• Boyce-Codd Normal Form(BCNF)
Suatu
relasi dikatakan BCNF jika dan hanya
jika, setiap determinan adalah candidate key. Untuk menentukan apakah suatu relasi adalah
BCNF, kita menentukannya dengan
mengidentifikasi semua determinan dan
memastikan
semua itu adalah candidate
key.
• Fourth Normal Form(4NF)
Sebuah
relasi dikatakan 4NF saat relasi tersebut
dalam BCNF dan tidak
lagi memiliki non-trivial Multi Valued Dependencies(MVD). MVD sendiri
adalah dependensi
antara
atribut-atribut dalam relasi meskipun relasi tersebut telah BCNF sehingga menyebabkan redundansi data.
• Fifth Normal Form(5NF)
5NF atau juga disebut
Project-Join Normal Form(PJNF) adalah sebuah relasi
yang tidak lagi memiliki join dependency.
Perancangan Database