Senin, 30 Agustus 2010

Bisnis adalah mengenai menjalin hubungan baik

Bisnis adalah mengenai menjalin hubungan baik. Costumer kita tidak hanya membeli produk
kita karena kebutuhan mereka. Namun mereka juga membeli karena mereka tahu bahwa
kita dapat diandalkan untuk memenuhi harapan mereka, dan bahkan mampu melampaui
harapan mereka. Costumer membeli karena mereka tahu bahwa kita peduli, sungguh peduli
pada apa yang mereka butuhkan melampaui tugas dan kewajiban kita semata. Costumer
membeli karena mereka merasakan kesungguhan kepedulian kita untuk membantu mereka,
melampaui tuntutan kerja dan pencapaian kita semata.
Bisinis adalah mengenai menjalin hubungan baik. Costumer memiliiki kepekaan untuk
menyadari mengenai kepedulian kita terhadap mereka. Mereka tahu bahwa kualitas dari
pelayanan sangat penting. Mereka menuntut dan mengharapkan pelayanan berkulitas yang
prima. Dan kunci dari kualitas pelayanan prima tersebut adalah KEPEDULIAN kita pada
mereka. Seberapa jauh kita mengupayakan yang terbaik dari yang mampu kita lakukan
untuk membantu mereka ? Seberapa jauh kita mau melakukan upaya ekstra (do the extra
mile) untuk mengejutkan mereka dengan pelayanan yang “Wow”?
Business is about Relationships ©
(Bisnis adalah mengenai menjalin hubungan baik)
“People don’t care how much you know, until they know how much you care”
(Orang‐orang tidak peduli seberapa banyak yang kau ketahui sampai mereka mengetehui
seberapa banyak kau peduli pada mereka)
Bisnis adalah mengenai menjalin hubungan baik. Costumer kita tidak hanya membeli produk
kita karena kebutuhan mereka. Namun mereka juga membeli karena mereka tahu bahwa
kita dapat diandalkan untuk memenuhi harapan mereka, dan bahkan mampu melampaui
harapan mereka. Costumer membeli karena mereka tahu bahwa kita peduli, sungguh peduli
pada apa yang mereka butuhkan melampaui tugas dan kewajiban kita semata. Costumer
membeli karena mereka merasakan kesungguhan kepedulian kita untuk membantu mereka,
melampaui tuntutan kerja dan pencapaian kita semata.
Bisinis adalah mengenai menjalin hubungan baik. Costumer memiliiki kepekaan untuk
menyadari mengenai kepedulian kita terhadap mereka. Mereka tahu bahwa kualitas dari
pelayanan sangat penting. Mereka menuntut dan mengharapkan pelayanan berkulitas yang
prima. Dan kunci dari kualitas pelayanan prima tersebut adalah KEPEDULIAN kita pada
mereka. Seberapa jauh kita mengupayakan yang terbaik dari yang mampu kita lakukan
untuk membantu mereka ? Seberapa jauh kita mau melakukan upaya ekstra (do the extra
mile) untuk mengejutkan mereka dengan pelayanan yang “Wow”?
Bisnis adalah mengenai menjalin hubungan baik. Hubungan paling utama yang menjamin
keberlangsungan bisnis adalah hubungan baik kita dengan Customer. Hubungan baik lebih
dari sekedar topeng sopan santun, namun sungguh merupakan ketulusan niat yang berasal
dari kepedulian untuk membantu dan melayani kebutuhan Customer. Apakah diriku adalah
pribadi “jarang” yang senantiasa dicari oleh Customer karena kepedulianku pada mereka
sungguh bernilai hebat ?
TJ Share & Grow
Volume 4 / Mei 2010
POSITIVE WEEKLY INSPIRATION
FOR TOPJAYA GROUP
Values TOPJAYA :
1. JUJUR
2. PEDULI
3. TANGGUNG JAWAB
4. CERDAS
5. CEPAT
May’s monthly Theme :
PEDULI
Share Your
Kindness
Grow
Yourself
Bisnis adalah mengenai menjalin hubungan baik. Jadikanlah diri kita sahabat bagi setiap
rekan bisnis yang dengannya kita berinteraksi. Siapa rekan bisnis tersebut? Tentu semua
orang yang terlibat dalam keseharian interaksi pekerjaan kita : teman sejawat, atasan,
bawahan, supplier, klien, dealer, shareholder, dan tentu saja Customer. Jadikan diri kita
orang pertama yang menunjukkan kepedulian pada semua rekan bisnis kita. Tidak ada
magnet yang lebih kuat untuk melekatkan keberhasilan yang sesungguhnya pada diri kita
selain niat dan prilaku baik yang konsisten kita lakukan dalam setiap interaksi kita dengan
rekan‐rekan bisnis kita.
Mari kita memastikan diri kita menjadi inisiator utama dalam menunjukkan kepeduliaan
kita. Melangkahlah lebih dulu untuk membantu. Ulurkanlah tangan lebih dulu untuk
menolong. Dahulukunlah “telinga” untuk mendengar dibandingkan “mulut” yang banyak
berbicara. Majulah lebih dulu untuk melayani. Terdepanlah dalam membangun orang lain.
Jadilah yang pertama dalam memperjuangkan kebaikan.
When you see someone in needs, be the first to do the action
TJ Share & Grow
Volume 4 / Mei 2010
POSITIVE WEEKLY INSPIRATION
FOR TOPJAYA GROUP

Lanjutkan......

Sabtu, 21 Agustus 2010

Hipotesis Keragaman

Untuk menguji hipotesis keragaman mengenai suatu populasi atau membandingkan keragaman suatu populasi dengan keragaman populasi lainnya. Jadi mungkin saja kita ingin menguji hipotesis bahwa keragaman persentase ketakmurnian suatu zat tidak melebihi batas yang dibolehkan, atau mungkin keragaman umur cat tembok tertentu sama dengan keragaman umur cat tembok lain yang merupakan tandingannya.

Hipotesis Chi-Square
Pertama-tama marilah kita perhatikan pengujian hipotesis nol H0 bahwa ragam populasi 2 sama dengan nilai tertentu 02 lawan salah satu dari alternatif, yagn ditunjukkan di bawah ini :

H0 : 2 = 02
H1 : 2 < 02 , 2 > 02 atau 2  02

Statistik uji digunakan sebagai landasan keputusan adalah peubah acak khi-kuadrat, yang juga digunakan untuk membuat selang kepercayaan bagi 2.

Jadi bila sebaran populasi yang diambil contohnya sekurang-kurangnnya kira-kira (mendekati) normal, nilai khi-kuadrat bagi uji 2 = 02 diberikan menurut rumus



Hipotesis Keragaman

Untuk menguji hipotesis keragaman mengenai suatu populasi atau membandingkan keragaman suatu populasi dengan keragaman populasi lainnya. Jadi mungkin saja kita ingin menguji hipotesis bahwa keragaman persentase ketakmurnian suatu zat tidak melebihi batas yang dibolehkan, atau mungkin keragaman umur cat tembok tertentu sama dengan keragaman umur cat tembok lain yang merupakan tandingannya.

Hipotesis Chi-Square
Pertama-tama marilah kita perhatikan pengujian hipotesis nol H0 bahwa ragam populasi 2 sama dengan nilai tertentu 02 lawan salah satu dari alternatif, yagn ditunjukkan di bawah ini :

H0 : 2 = 02
H1 : 2 < 02 , 2 > 02 atau 2  02

Statistik uji digunakan sebagai landasan keputusan adalah peubah acak khi-kuadrat, yang juga digunakan untuk membuat selang kepercayaan bagi 2.

Jadi bila sebaran populasi yang diambil contohnya sekurang-kurangnnya kira-kira (mendekati) normal, nilai khi-kuadrat bagi uji 2 = 02 diberikan menurut rumus



Bila H0 benar, x2 adalah sebaran khi-kudrat dengan v = n – 1 derajat bebas, wilayah kritiknya:
H1 wilayah kritik
2 > 2 >
2 < 2 < 2   Contoh Soal Sebuah perusahaan aki mobil mengatakan bahwa umur aku yang diproduksinya mempunyai simpangan baku 0,9 tahun. Bila suatu contoh acak 10 aki menghasilkan simpangan baku s = 1,2 tahun. Apakah menurut anda  > 0,9 tahun? Gunakan taraf nyata 0,05!

Jawab :
1. H0 : 2 = 0,81
2. H1 : 2 > 0,81
3.  = 0,05
4. Statistik uji :
, daerah kritik: 2 > 16,919
5. Penghitungan : s2 = 1,44 ; n = 10


6. Keputusan : terima H0 dan simpulkan bahwa tidak ada alasan untuk meragukan simpangan bakunya adalah 0,9 tahun.


Hipotesis Sebaran F (dua ragam)
Sekarang perhatikan masalah pengujian kesamaan dua ragam populasi 12 dan 22. Artinya kita ingin menguji hipotesis nol H0 bahwa 12 = 22 lawan salah satu alternative, yang ditunjukkan di bawah ini :
H0 : 12 = 22
H1 : 12 < 22 , 12 > 22 atau 12  22






Bila contoh berukuran n1 dan n2 itu bersifat bebas, maka nilai f bagi pengujian 12 = 22 adalah rasio

S12 dan S22 adalah ragam dari kedua sampel tersebut. Bila kedua populasi sedikitnya mendekati normal dan hipotesis nol-nya benar, maka rasio f merupakan suatu nilai bagi sebaran F dengan v1= n1–1 dan v2= n2–1 derajat bebas, sehingga wilayah kritiknya :
H1 wilayah kritik
12 > >
12 < < 12   Contoh Soal Sebuah pelajaran matematika diberikan pada 12 siswa dengan metode pangajaran biasa. Kelas baru terdiri dari 10 orang siswa diberi pelajaran yang sama tetapi metodenya telah diprogramkan. Pada akhir semester kedua kelas diberi ujian yang sama. Kelas pertama mempunyai ragam 16 dan kelas-kelas kedua ragamnya 25. apakah ragam kedua populasi sama? Gunakan taraf nyata 0,10. Jawab : 1. H0 : 12 = 22 2. H1 : 12  22 3.  = 0,10 4. Statistik uji : , daerah kritik: 5. Penghitungan : s12 = 16 , s22 = 25 6. Keputusan : terima H0 dan simpulkan bahwa kita cukup beralasan untuk menerima kedua ragam populasi sama.

Lanjutkan......

PENGANTAR PEMROGRAMAN BERORIENTASI OBJEK

Pemrograman Berorientasi Objek sebenarnya bukanlah bahasa
pemrograman baru, tetapi jalan baru untuk berpikir dan merancang aplikasi yang
dapat membantu memecahkan persoalan mengenai pengembangan perangkat
lunak. Pemrograman berorientasi objek disusun dan dipahami oleh ilmuwan yang
memandang dunia sebagai populasi objek yang berinteraksi dengan yang lain.
Prosedur yang digunakan dalam objek dipandang sebagai kepentingan kedua
karena tergantung pada objek itu sendiri.
Tentunya hal tersebut berbeda dengan pemrograman terstruktur.
Pemrograman terstruktur mempunyai sifat pemisahan data dengan kode yang
mengolahnya.
Pemrograman Berorientasi Objek (PBO) adalah metode pemrograman yang
meniru cara kita memperlakukan sesuatu(benda). Ada tiga karakteristik bahasa
Pemrograman Berorientasi Objek, yaitu :
1. Pengkapsulan (Encapsulation) : mengkombinasikan suatu struktur dengan
fungsi yang memanipulasinya untuk membentuk tipe data baru yaitu kelas
(class).
2. Pewarisan (Inheritance) : mendefinisikan suatu kelas dan kemudian
menggunakannya untuk membangun hirarki kelas turunan, yang mana
masing-masing turunan mewarisi semua akses kode maupun data kelas
dasarnya.
PEMROGRAMAN BERORIENTASI OBJEK
Pengantar
Pemrograman Berorientasi Objek sebenarnya bukanlah bahasa
pemrograman baru, tetapi jalan baru untuk berpikir dan merancang aplikasi yang
dapat membantu memecahkan persoalan mengenai pengembangan perangkat
lunak. Pemrograman berorientasi objek disusun dan dipahami oleh ilmuwan yang
memandang dunia sebagai populasi objek yang berinteraksi dengan yang lain.
Prosedur yang digunakan dalam objek dipandang sebagai kepentingan kedua
karena tergantung pada objek itu sendiri.
Tentunya hal tersebut berbeda dengan pemrograman terstruktur.
Pemrograman terstruktur mempunyai sifat pemisahan data dengan kode yang
mengolahnya.
Pemrograman Berorientasi Objek (PBO) adalah metode pemrograman yang
meniru cara kita memperlakukan sesuatu(benda). Ada tiga karakteristik bahasa
Pemrograman Berorientasi Objek, yaitu :
1. Pengkapsulan (Encapsulation) : mengkombinasikan suatu struktur dengan
fungsi yang memanipulasinya untuk membentuk tipe data baru yaitu kelas
(class).
2. Pewarisan (Inheritance) : mendefinisikan suatu kelas dan kemudian
menggunakannya untuk membangun hirarki kelas turunan, yang mana
masing-masing turunan mewarisi semua akses kode maupun data kelas
dasarnya.
3. Polimorphisme (Polymorphism) : memberikan satu aksi untuk satu nama
yang dipakai bersama pada satu hirarki kelas, yang mana masing-masing
kelas hirarki menerapkan cara yang sesuai dengan dirinya.
42
Struktur dan kelas
Dalam C++, tipe data struktur yang dideklarasikan dengan kata kunci struct, dapat
mempunyai komponen dengan sembarang tipe data, baik tipe data dasar maupun
tipe data turunan, termasuk fungsi. Dengan kemampuan ini, tipe data struktur
menjadi sangat berdaya guna.

Untuk memberi nilai panjang dan lebar kotak, salah satu caranya adalah seperti di
atas. Cara lain untuk memberi nilai panjang dan lebar adalah dengan membentuk
suatu fungsi. Karena fungsi ini hanya digunakan untuk memberi nilai data panjang
dan lebar suatu kotak, tentunya fungsi ini khusus milik objek kotak, sehingga
harus dianggap sebagai anggota struktur kotak. C++ sebagai bahasa pemrograman
dapat mendefinisikan anggota tipe struktur yang berupa fungsi.
dengan tipe struktur kotak seperti itu, untuk memberi nilai panjang dan lebar
hanya dengan memanggil fungsi SetUkuran()
kotak.SetUkuran(10,7);
Selain punya ukuran panjang dan lebar, kotak juga mempunyai keliling dan luas.
Dengan demikian, kita dapat memasukkan fungsi untuk menghitung keliling dan
luas ke dalam struktur kotak.
Sebagai catatan, bahwa definisi fungsi yang menjadi anggota struktur dapat
ditempatkan di luar tubuh struktur. Dengan cara ini maka deklarasi struktur kotak
menjadi seperti berikut:
Bentuk program di atas, adalah contoh gaya pemrograman berorientasi
prosedur (terstruktur) yang sudah mengubah pola pikirnya menjadi berorientasi
objek. Dalam pemrograman berorientasi objek, jika kita telah menentukan suatu
objek tertentu, maka objek tersebut kita definisikan dalam bentuk tipe baru yang
namanya kelas.
Tipe data kelas didefinisikan dengan kata kunci (keyword) class, yang
merupakan generalisasi dari pernyataan struct. Pernyataan struct secara umum
digantikan dengan pernyataan class. Jika objek kotak dideklarasikan dalam bentuk
kelas, maka deklarasinya mirip dengan struktur.
Dalam deklarasi kelas tersebut, muncul kata public. Data atau fungsi yang
dideklarasikan di bawah kata kunci public mempunyai sifat dapat diakses dari luar
kelas secara langsung. Dalam deklarasi tersebut, variabel panjang dan lebar tidak
bersifat public, sehingga tidak dapat diakses secara langsung dari luar kelas.
Dengan demikian perintah-perintah di bawah ini tidak dapat dijalankan.
Inilah yang membedakan struktur dan kelas. Dalam kelas, masing-masing
data dan fungsi anggota diberi sifat tertentu. Jika semua anggota kelas bersifat
public, maka kelas sama dengan struktur.
Untuk dapat mengakses data panjang dan lebar pada kelas tkotak harus
dilakukan oleh fungsi yang menjadi anggota kelas dan bersifat public.
Pada deklarasi kelas tkotak, satu-satunya jalan untuk memberi nilai
panjang dan lebar adalah dengan menggunakan fungsi SetUkuran(). Untuk
mengambil nilai panjang dan lebar juga harus dilakukan oleh fungsi yang menjadi
anggota kelas. Misalnya, kita definisikan fungsi GetPanjang() dan GetLebar()
untuk mengambil nilai panjang dan lebar.
Pengkapsulan(Encapsulation)
Salah satu keistimewaan C++ adalah pengkapsulan. Pengkapsulan adalah
mengkombinasikan suatu struktur dengan fungsi yang memanipulasinya untuk
membentuk tipe data baru yaitu kelas(class).
Kelas akan menutup rapat baik data maupun kode. Akses item di dalam kelas
dikendalikan. Pengendalian ini tidak hanya berupa data tetapi juga kode. Saat
kelas akan digunakan, kelas harus sudah dideklarasikan. Yang penting, pemakai
kelas mengetahui deskripsi kelas, tetapi bukan implementasinya. Bagi pemakai,
detail internal kelas tidak penting. Konsep ini disebut penyembunyian informasi
(information hiding).
Untuk menggunakan kelas, kita perlu mengetahui sesuatu tentangnya. Kita
perlu mengetahui fungsi apa yang bisa digunakan dan data apa saja yang dapat
diakses. Fungsi yang dapat digunakan dan data yang dapat diakses disebut
antarmuka pemakai (user interface). Antarmuka pemakai menceritakan bagaimana
kelas berperilaku, bukan bagaimana kelas dibuat. Kita tidak perlu mengetahui
implementasi kelas. Sekali kelas dibuat, kita bisa memakainya berulang-ulang.
Bagi pandangan pemakai, kelas adalah kotak hitam dengan perilaku tertentu.
Kendali Akses terhadap Kelas
Tugas kelas adalah untuk menyembunyikan informasi yang tidak
diperlukan oleh pemakai. Ada tiga macam pemakai kelas:
1. kelas itu sendiri
49
2. pemakai umum
3. kelas turunan
Setiap macam pemakai mempunyai hak aksesnya masing-masing. Hak akses
ini ditandai dengan kenampakan anggota kelas. Kelas pada C++ menawarkan tiga
aras kenampakan anggota kelas (baik anggota data maupun fungsi anggota):
1. private
Anggota kelas private mempunyai kendali akses yang paling ketat.
Dalam bagian private, hanya fungsi anggota dari kelas itu yang dapat
mengakses anggota private atau kelas yang dideklarasikan sebagai
teman (friend).
2. public
Dalam bagian public, anggotanya dapat diakses oleh fungsi anggota
kelas itu sendiri, instance kelas, fungsi anggota kelas turunan. Suatu
kelas agar bisa diakses dari luar kelas, misalnya dalam fungsi main(),
perlu mempunyai hak akses publik. Hak akses ini yang biasanya
digunakan sebagai perantara antara kelas dengan dunia luar.
3. protected
Suatu kelas dapat dibuat berdasarkan kelas lain. Kelas baru ini
mewarisi sifat-sifat dari kelas dasarnya. Dengan cara ini bisa dibentuk
kelas turunan dari beberapa tingkat kelas dasar. Bila pada kelas dasar
mempunyai anggota dengan hak akses terproteksi, maka anggota kelas
ini akan dapat juga diakses oleh kelas turunannya. Anggota kelas
terproteksi dibentuk dengan didahului kata kunci protected. Pada
bagian protected, hanya fungsi anggota dari kelas dan kelas-kelas
turunannya yang dapat mengakses anggota.
50

Lanjutkan......

PBO dengan C++

C++ diciptakan oleh Bjarne Stroustrup di laboratorium Bell pada awal tahun
1980-an, sebagai pengembangan dari bahasa C dan Simula. Saat ini, C++
merupakan salah satu bahasa yang paling populer untuk pengembangan software
berbasis OOP.
Kompiler untuk C++ telah banyak beredar di pasaran. Software developer
yang paling diminati adalah Borland Inc. dan Microsoft Corp.
Produk dari Borland untuk kompiler C++ adalah Turbo C++, Borland C++,
Borland C++ Builder. Sedangkan dari Microsoft adalah Ms. Visual C++.
Walaupun banyak kompiler yang tersedia, namun pada intinya bahasa
pemrograman yang dipakai adalah C++.
􀁏Sebelum mulai melakukan kode program, sebaiknya diingat bahwa C++
bersifat “case sensitive”, yang artinya huruf besar dan huruf kecil dibedakan.
2. STRUKTUR BAHASA C++
Cara terbaik untuk balajar bahasa pemrograman adalah dengan langsung
mempraktikannya. Cobalah contoh program berikut :
Program di atas, misalnya dapat disimpan dengan nama latih1.cpp. Cara untuk
menyimpan dan mengkompile program berbeda-beda, tergantung kompiler yang
dipakai.
// program pertamaku
#include
int main ()
{
cout << "Selamat Belajar C++"; return 0; } 3 1. PENGANTAR C++
C++ diciptakan oleh Bjarne Stroustrup di laboratorium Bell pada awal tahun
1980-an, sebagai pengembangan dari bahasa C dan Simula. Saat ini, C++
merupakan salah satu bahasa yang paling populer untuk pengembangan software
berbasis OOP.
Kompiler untuk C++ telah banyak beredar di pasaran. Software developer
yang paling diminati adalah Borland Inc. dan Microsoft Corp.
Produk dari Borland untuk kompiler C++ adalah Turbo C++, Borland C++,
Borland C++ Builder. Sedangkan dari Microsoft adalah Ms. Visual C++.
Walaupun banyak kompiler yang tersedia, namun pada intinya bahasa
pemrograman yang dipakai adalah C++.
􀁏Sebelum mulai melakukan kode program, sebaiknya diingat bahwa C++
bersifat “case sensitive”, yang artinya huruf besar dan huruf kecil dibedakan.
2. STRUKTUR BAHASA C++
Cara terbaik untuk balajar bahasa pemrograman adalah dengan langsung
mempraktikannya. Cobalah contoh program berikut :
Program di atas, misalnya dapat disimpan dengan nama latih1.cpp. Cara untuk
menyimpan dan mengkompile program berbeda-beda, tergantung kompiler yang
dipakai.
// program pertamaku
#include
int main ()
{
cout << "Selamat Belajar C++"; return 0; } 3 Ketika di-run, maka di layar akan muncul sebuah tulisan “Selamat Belajar C++”. Contoh di atas, adalah sebuah contoh program sederhana menggunakan C++. Namun, penggalan program tersebut telah menyertakan sintak-sintak dasar bahasa C++. Sintak dasar tersebut, akan kita bahas satu per satu: // program pertamaku merupakan sebuah baris komentar. Semua baris, yang ditandai dengan dua buah tanda slash (//), akan dianggap sebagai baris komentar dan tidak akan berpengaruh pada hasil. Biasanya, baris komentar dipakai oleh programmer untuk memberikan penjelasan tentang program. Baris komentar dalam C++, selain ditandai dengan (//) juga dapat ditandai dengan (/*….*/) Perbedaan mendasar dari keduanya adalah : // baris komentar /* blok komentar */ #include
pernyataan yang diawali dengan tanda (#) merupakan pernyataan untuk
menyertakan preprocessor. Pernyataan ini bukan untuk dieksekusi. #include
berarti memerintahkan kompiler untuk menyertakan file
header iostream.h. Dalam file header ini, terdapat beberapa fungsi standar
yang dipakai dalam proses input dan output. Seperti misalnya perintah cout
yang dipakai dalam program utama.
int main ()
baris ini menandai dimulainya kompiler akan mengeksekusi program. Atau
dengan kata lain, pernyataan main sebagai penanda program utama. Adalah
suatu keharusan, dimana sebuah program yang ditulis dalam bahasa C++
memiliki sebuah main.
main diikuti oleh sebuah tanda kurung () karena main merupakan sebuah
fungsi. Dalam bahasa C++ sebuah fungsi harus diikuti dengan tanda (), yang
4
nantinya dapat berisi argumen. Dan sintak formalnya, sebuah fungsi dimulai
dengan tanda {}, seperti dalam contoh program.
cout << "Selamat Belajar C++"; perintah ini merupakan hal yang akan dieksekusi oleh compiler dan merupakan perintah yang akan dikerjakan. cout termasuk dalam file iostream. cout merupakan perintah untuk menampilkan ke layer. Perlu diingat, bahwa setiap pernyataan dalam C++ harus diakhiri dengan tanda semicolon (;) untuk memisahkan antara pernyataan satu dengan pernyataan lainnya. return 0; pernyataan return akan menyebabkan fungsi main() menghentikan program dan mengembalikan nilai kepada main. Dalam hal ini, yang dikembalikan adalah nilai 0. Mengenai pengembalian nilai, akan dijelaskan nanti mengenai Fungsi dalam C++. Coba tambahkan sebaris pernyataan lagi, sehingga program contoh di atas akan menjadi seperti berikut: Maka perintah cout yang kedua akan menampilkan sebuah kalimat lagi di layar, dengan tulisan “di kampusku”. // latihan keduaku #include
int main ()
{
cout << "Selamat Belajar C++"; cout << "di kampusku"; return 0; } 5 3. TIPE DATA Terdapat 5 tipe data bawaan dari bahasa C, yaitu : void, integer, float, double, dan char. Type Keterangan void diartikan sebagai tanpa tipe data dan tanpa pengembalian nilai int bilangan bulat (integer) float bilangan pecahan (floating point) double bilangan pecahan dengan jangkauan data yang lebih luas char Karakter Sedangkan C++ sendiri menambahkan dua buah tipe data lagi, yakni : bool dan wchar_t. Type Keterangan bool isi bilangan Boolean (True dan False) wchar_t wide character Dengan jangkauannya adalah sebagai berikut : Tipe Ukuran (bits) Range unsigned char 8 0 s/d 255 char 8 -128 s/d 127 short int 16 -32,768 s/d 32,767 unsigned int 32 0 s/d 4,294,967,295 int 32 -2,147,483,648 s/d 2,147,483,647 unsigned long 32 0 s/d 4,294,697,295 long 32 -2,147,483,648 s/d 2,147,483,647 float 32 3.4 e-38 s/d 1.7 E +38 double 64 1.7 E-308 s/d 3.4 E + 308 long double 80 3.4 E-4932 s/d 1.1 E + 4932 6 4. VARIABEL Berbeda dengan pendeklarasian variabel di bahasa pemrograman lain, dalam C++ sebelum mendeklarasikan variabel, hal pertama yang harus dideklarasikan adalah tipe data yang akan digunakan untuk menampung data. Format penulisannya adalah : Tipe_data pengenal = nilai ; Sebagai contoh : int a; float nomor; atau dapat juga pemberian nilai awal untuk variable dilakukan pada saat deklarasi, contoh : int a=10; char s=’a’; Jika hendak mendeklarasikan beberapa variabel sekaligus dengan tipe data yang sama, dapat dilakukan dengan 2 cara, yaitu : int a; int b; int c; atau dapat disederhanakan dengan deklarasi : int a,b,c; Perhatikan contoh berikut: // bekerja dengan variabel #include
int main ()
{
// inisialisasi variabel :
int a, b;
int hasil;
// proses :
a = 5;
b = 2;
a = a + 1;
hasil = a - b;
// cetak hasilnya :
cout << hasil; // menghentikan program : return 0; } 7 5. KONSTANTA Konstanta mirip dengan variable, namun memiliki nilai tetap. Konstanta dapat berupa nilai Integer, Float, Karakter dan String. Pendeklarasian konstanta dapat dilakukan dengan 2 cara : o menggunakan (#define) deklarasi konstanta dengan cara ini, lebih gampang dilakukan karena akan menyertakan #define sebagai preprocessor directive. Dan sintaknya diletakkan bersama – sama dengan pernyataan #include (di atas main()). Format penulisannya adalah : #define pengenal nilai Contoh penggunaan : #define phi 3.14159265 #define Newline ‘\n’ #define lebar 100 pendeklarasian dengan #define tanpa diperlukan adanya tanda = untuk memasukkan nilai ke dalam pengenal dan juga tanpa diakhiri dengan tanda semicolon(;). o menggunakan (const) Sedangkan dengan kata kunci const, pendeklarasian konstanta mirip dengan deklarasi variable yang ditambah kata depan const. Contoh : const int lebar = 100; const char tab = ‘\t’; const zip = 1212; Untuk contoh terakhir, deklarasi variable zip yang tanpa tipe data, maka compiler akan secara otomatis memasukkannya ke dalam tipe int. 6. OPERATOR Dalam C++, terdapat berbagai macam operator yang dapat dimanfaatkan dalam aplikasi. 8 o Operator Assign (=) Operator (=), akan memberikan nilai ke dalam suatu variable. artinya memberikan nilai 5 ke dalam variable a. Sebelah kiri tanda = dalam pernyataan di atas, dikenal dengan lvalue (left value) dan di sebelah kanan tanda = dikenal dengan rvalue (right value). lvalue harus selalu berupa variable, sedangkan rvalue dapat berupa variable, nilai, konstanta, hasil operasi ataupun kombinasinya. o Operator Aritmatika ( +, -, *, /, %) Operator Keterangan + Penjumlahan - Pengurangan * Perkalian / Pembagian % Modulus Untuk operator %, sama dengan modulus, yaitu untuk mengetahui sisa hasil bagi. Misalnya a = 11 % 3, maka variable a akan terisi nilai 2 karena sisa hasil bagi 11 dan 3 adalah 2. o Operator Majemuk ( +=, -=, *=, /=, %=, <<=, >>=, &=, |= )
Dalam C++, operasi aritmatika dapat disederhanakan penulisannya dengan
format penulisan operator majemuk.
Misalnya :
a += 5 sama artinya dengan menuliskan a = a+5
a *= 5 sama artinya dengan menuliskan a = a*5
a /= 5 sama artinya dengan menuliskan a = a/5
a %= 5 sama artinya dengan menuliskan a = a % 5
lvalue a = 5 rvalue
9
o Operator Penaikan dan Penurunan (++ dan --)
Operator penaikan (++) akan menaikkan atau menambahkan 1 nilai
variable. Sedangkan operator (--) akan menurunkan atau mengurangi 1
nilai variable.
Misalnya :
a++;
a+=1;
a=a+1;
untuk ketiga pernyataan tersebut, memiliki arti yang sama yaitu
menaikkan 1nilai variable 1.
Karakteristik dari operator ini adalah dapat dipakai di awal (++a) atau di
akhir (--a) variable. Untuk penggunaan biasa, mungkin tidak akan
ditemui perbedaan hasil dari cara penulisannya. Namun untuk beberapa
operasi nantinya harus diperhatikan cara peletakan operator ini, karena
akan berpengaruh terhadap hasil.
Contoh 1 : Contoh 2:
B=3; B=3;
A=++B; A=B++;
// A= 4, B=4 //hasil A=3, B=4
Dari contoh1, nilai B dinaikkan sebelum dikopi ke variable A. Sedangkan
pada contoh2, nilai B dikopi terlebih dahulu ke variable A baru kemudian
dinaikkan.
o Operator Relasional (==, !=, >, <, >=, <=) Yang dihasilkan dari operator ini bukan berupa sebuah nilai, namun berupa bilangan bool yaitu benar atau salah. Operator Keterangan == Sama dengan != Tidak sama dengan > Lebih besar dari
< Kurang dari 10 >= Lebih besar dari atau sama dengan
<= Kurang dari atau sama dengan Contoh : (7==5) hasilnya adalah false (5>4) hasilnya adalah true
(5<5) hasilnya adalah false o Operator Logika ( !, &&, || ) Operator logika juga digunakan untuk memberikan nilai atau kondisi true dan false. Biasanya operator logika dipakai untuk membandingkan dua kondisi. Misalnya: ((5==5) && (3>6)) mengembalikan nilai false, karena (true &&
false)
untuk logika NOT (!), contohnya !(5==5) akan mengembalikan nilai
false, karena !(true).
o Operator Kondisional ( ? )
Format penulisan operator kondisional adalah :
kondisi ? hasil1 : hasil2
Jika kondisi benar maka yang dijalankan adalah hasil1 dan jika kondisi
salah, maka akan dijalankan hasil2.
Contoh :
7==5 ? 4 : 3 hasilnya adalah 3, karena 7 tidak sama dengan 5
5>3 ? a : b hasilnya adalah a, karena 5 lebih besar dari 3
11

Lanjutkan......

Perkenalan PBO (Java)

I. Pengenalan Java
Java adalah suatu teknologi di dunia software komputer, yang merupakan
suatu bahasa pemrograman tingkat tinggi Java mudah dipelajari, terutama bagi
programmer yang telah mengenal C/C++, Java juga merupakan bahasa
pemrograman berorientasi objek dan dirancang agar dapat dijalankan di
semua platform.
II. Jenis – Jenis Java
- Enterprise Java (J2EE)
Dipergunakan untuk aplikasi berbasis web, aplikasi sistem tersebar
dengan beraneka ragam klien dengan kompleksitas yang tinggi.
- Standar Java (J2SE)
Dipergunakan untuk aplikasi berbasis desktop dan inilah yang biasa dikenal
sebagai bahasa Java.
- Micro Java (J2ME)
Merupakan subset dari J2SE dan salah satu aplikasinya yang banyak
dipakai adalah untuk wireless device / mobile device.

Perkenalan PBO (Java)
I. Pengenalan Java
Java adalah suatu teknologi di dunia software komputer, yang merupakan
suatu bahasa pemrograman tingkat tinggi Java mudah dipelajari, terutama bagi
programmer yang telah mengenal C/C++, Java juga merupakan bahasa
pemrograman berorientasi objek dan dirancang agar dapat dijalankan di
semua platform.
II. Jenis – Jenis Java
- Enterprise Java (J2EE)
Dipergunakan untuk aplikasi berbasis web, aplikasi sistem tersebar
dengan beraneka ragam klien dengan kompleksitas yang tinggi.
- Standar Java (J2SE)
Dipergunakan untuk aplikasi berbasis desktop dan inilah yang biasa dikenal
sebagai bahasa Java.
- Micro Java (J2ME)
Merupakan subset dari J2SE dan salah satu aplikasinya yang banyak
dipakai adalah untuk wireless device / mobile device.
III. Fitur - Fitur Java
a) Applet
Program Java yang dapat berjalan di atas browser, yang dapat
membuat halaman HTML lebih dinamis dan menarik.
b) Java Networking
Sekumpulan API (Application Programming Interface) yang
menyediakan fungsi – fungsi untuk aplikasi – aplikasi jaringan, seperti
penyediaan akses untuk TCP, UDP, IP Adrress dan URL. Tetapi Java
Networking tidak menyediakan akses untuk ICMP dikarenakan alasan
sekuriti dan pada kondidi umum hanya administrator ( root ) yang bisa
memanfaatkan protokol ICMP.
c) Java Database Connectivity (JDBC)
JDBC menyediakan sekumpulan API yang dapat digunakan untuk
mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft
SQL Server.
d) Java Security
Java Security menyediakan sekumpulan API untuk mengatur security
dari aplikasi Java baik secara high level atau low level, seperti
public/private key management dan certificates.
e) Java Swing
Java Swing menyediakan sekumpulan API untuk membangun aplikasi
– aplikasi GUI (Graphical User Interface) dan model GUI yang diinginkan
bisa bermacam – macam, bisa model Java, model Motif/CDE atau model
yang dependent terhadap platform yang digunakan.
f) Java RMI
Java RMI menyediakan sekumpulan API untuk membangun aplikasi –
aplikasi Java yang mirip dengan model RPC (Remote Procedure Call) jadi
object - object Java bisa di call secara remote pada jaringan komputer.
g) Java 2D/3D
Java 2D/3D menyediakan sekumpulan API untuk membangun grafik –
grafik 2D/3D yang menarik dan juga akses ke printer.
h) Java Server Pages
Berkembang dari Java Servlet yang digunakan untuk menggantikan
aplikasi – aplikasi CGI, JSP (Java Server Pages) yang mirip ASP dan PHP
merupakan alternatif terbaik untuk solusi aplikasi Internet.
i) JNI (Java Native Interface)
JNI menyediakan sekumpulan API yang digunakan untuk mengakses
fungsi – fungsi pada library (*.dll atau *.so) yang dibuat dengan
bahasa pemrograman yang lain seperti C,C++, dan Basic.
j) Java Sound
Java Sound menyediakan sekumpulan API untuk manipulasi sound.
k) Java IDL + CORBA
Java IDL (Interface Definition Language) menyediakan dukungan Java
untuk implementasi CORBA (Common Object Request Broker) yang
merupakan model distributed-Object untuk solusi aplikasi besar di
dunia networking.
l) Java Card
Java Card utamanya digunakan untuk aplikasi – aplikasi pada smart
card, yang sederhana wujudnya seperti SIM Card pada handphone.
m) JTAPI (Java Telephony API)
Java Telepony API menyediakan sekumpulan API untuk
memanfaatkan devices – devices telepony, sehingga akan cocok untuk
aplikasi – aplikasi CTI (Computer Telephony Integration) yang
dibutuhkan seperti ACD (Automatic Call Distribution), PC-PBX dan
lainnya.
IV. Metode Compiler Java
Bahasa Lain (misalnya
Java di Windows C/C++) di Windows
Source code
(coba.java)
Source code
(coba.cpp)
Bytcode
(coba.class)
Binary
(coba.exe)
Compile
(javac coba.java)
Compile
(cpp coba.cpp)
Java
Interpreter
(java.exe)
Windows
Platform
Java
Interpreter
(java)
UNIX
Platform
Windows
Platform
UNIX
Platform
Binary
incompatibility

V. OOP Java
Pemrograman berorientasi objek diciptakan untuk mempermudah
pengembangan program dengan cara mengikuti model yang telah ada dalam
kehidupan nyata. Dalam paradigma ini, sesuai dengan model kehidupan nyata,
segala bagian (entiti) dari suatu permasalahan adalah objek. Objek-objek ini
kemudian juga dapat berupa gabungan dari beberapa objek yang lebih kecil.
Sebagai contoh, tengoklah sebuah mobil. Mobil adalah sebuah objek dalam
kehidupan nyata. Namun mobil sendiri terbentuk dari beberapa objek yang lebih
kecil seperti roda ban, mesin, jok, dll. Mobil sebagai objek yang merupakan
gabungan dari objek yang lebih kecil dibentuk dengan membentuk hubungan
antara objek-objek penyusunnya. Begitu juga dengan sebuah program. Objek
besar dapat dibentuk dengan menggabungkan beberapa objek-objek dalam
bahasa pemrograman. Objek-objek tersebut berkomunikasi dengan saling
mengirim pesan kepada objek lain.
a) Objek
Baik dalam dunia nyata atau dalam sebuah program, sebuah objek
memiliki dua karakteristik, yaitu :
1. State adalah keadaan dari sebuah objek, seperti mobil memiliki state
warna, model, tahun pembuatan, kondisi, dll
2. Behaviour adalah kelakuan dari objek tersebut, seperti mobil dapat
melaju, membelok, membunyikan klakson, dll.
Objek menyimpan statenya dalam satu atau lebih variabel, dan
mengimplementasikan behaviournya dengan metode. Dengan penjelasan
di atas, dapat disimpulkan bahwa objek adalah bagian software yang
dibentuk dengan variabel-variabel dan metode-metode yang berhubungan
dengan variabel tersebut.
Dengan karakteristik tersebut, kita dapat memodelkan berbagai objek
dalam kehidupan nyata ke dalam objek-objek dalam sebuah program.
Lebih lanjut kita dapat memodelkan objek-objek abstrak ke dalam sebuah
program. Contoh umum untuk konsep abstrak seperti ini adalah objek
Event, yaitu objek untuk mewakili peristiwa klik atau tombol ditekan.

b) Message (Pesan)
Objek-objek yang bekerja sama membentuk suatu sistem harus saling
berkomunikasi untuk menjalankan sistem tersebut. Dalam sebuah
program, objek-objek berkomunikasi satu sama lain dengan mengirimkan
pesan. Sebagai contoh, jika sebuah objek ingin memanggil metode dari
objek lain, maka objek ini akan mengirimkan sebuah pesan yang meminta
objek tujuan untuk menjalankan metode yang dikehendaki. Pesan ini akan
berisi informasi-informasi yang dibutuhkan objek tujuan untuk dapat
menunaikan permintaan tadi. Sebuah pesan dibentuk oleh informasi
berikut ini: 1) objek yang dituju; 2) nama metode yang ingin dipanggil; 3)
parameter yang dibutuhkan metode tersebut.
Misalnya : anotherObject.aMethod(parameter1);
c) Kelas
Kelas adalah semacam cetakan, atau template, untuk membuat objek.
Ibaratkan sebuah rancangan rumah yang digunakan untuk membangun
ratusan rumah. Rumah yang dibangun tersebut adalah objek dari kelas
rancangan rumah. Hal ini dapat dilakukan karena semua objek rumah yang
dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan
semacam blueprintnya. Tetapi objek-objek yang dibangun tetap akan
memiliki bentuk fisik tertentu sendiri-sendiri, seperti variabel dalam
sebuah program, atau pintu sebuah objek rumah. Dengan penjelasan ini,
kelas dapat kita definisikan kembali menjadi sebuah blueprint, atau
prototipe, yang mendefinisikan variabel dan metode yang sama untuk
semua objek sejenis.
d) Pewarisan
Terminologi asing untuk pewarisan adalah inheritance. Mungkin dalam
literatur lain Anda akan sering menjumpai istilah ini. Secara gamblang,
pewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas
lain. Sebagai contoh, sebuah kelas RumahMewah akan mewarisi state dan
behaviour dari kelas Rumah. Begitu juga dengan kelas RumahSederhana.
Kelas RumahMewah dan RumahSederhana disebut subkelas, atau kelas
anak, dari kelas Rumah, yang disebut superkelas, atau kelas induk.

VI. Pengenalan Aplikasi Java
a) Setting Path Java
Pada sistem operasi Windows, perintah untuk setting path yaitu:
C:\>set PATH=c:\folderinstalasi\bin;
Contoh pada modul ini adalah :
C:\> set PATH=C:\Program Files\Java\jdk1.6.0\bin;%PATH%
b) Tulis Source Code
Untuk menuliskan code program bisa menggunakan teks editor apa saja,
misalnya Notepad. Untuk latihan pertama coba ketikkan syntax dibawah ini
dan simpan dengan nama hello.java :
.
Keterangan Syntax
- Public, salah satu macam modifier.
- Static, tipe method.
- Void, menunjukkan bahwa method tidak mengembalikan nilai atau
objek.
- Main, nama method utama dari program java.
- String, tipe argumen yang diterima untuk parameter dari command
java.
- Args, array argumen yang bisa ditambahkan pada saat
menggunakan command java untuk menjalankan program java.
- System.out.println("Latihan Java Pertama"), untuk mencetak kata
“Latihan Java Pertama” dilayar.
public class hello
{
public static void main (String[] args)
{
System.out.println("Latihan Java Pertama");
}
}

c) Compile Source Code
Untuk mengcompile source code yang telah dibuat menggunakan syntax
dibawah ini yang diketikkan pada CommandPrompt
javac (nama file yang akan dicompile)
contoh :
c:\>javac hello.java
Hasil compile source code ini akan membuat sebuah file dengan nama
hello.class, file ini selanjutnya yang akan dijalankan.
d) Menjalankan Program
Untuk menjalankan file dengan extensi .class yang merupakan hasil
kompilasi dari file java menggunakan syntax dibawah ini yang diketikkan
pada CommandPrompt.
java (nama file hasil kompilasi)
contoh :
c:\>java hello
e) Latihan

Lanjutkan......

Sejarah SQL

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.

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.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD)[1], namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan ANSI. Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan SMBD.
Data Definition Language
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah CREATE untuk membuat objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan adalah:
CREATE DATABASE nama_basis_data
CREATE DATABASE membuat sebuah basis data baru.
CREATE TABLE nama_tabel
CREATE TABLE membuat tabel baru pada basis data yang sedang aktif. Secara umum, perintah ini memiliki bentuk
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [constraints][,
nama_field2 tipe_data,
...]
)
atau
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [,
nama_field2 tipe_data,
...]
[CONSTRAINT nama_field constraints]
)
dengan:
nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada nama kolom.
tipe_data tergantung implementasi sistem manajemen basis data. Misalnya, pada MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan sebagainya.
constraints adalah batasan-batasan yang diberikan untuk tiap kolom. Ini juga tergantung implementasi sistem manajemen basis data, misalnya NOT NULL, UNIQUE, dan sebagainya. Ini dapat digunakan untuk mendefinisikan kunci primer (primary key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki kunci primer sama sekali, namun sangat disarankan mendefinisikan paling tidak satu kolom sebagai kunci primer.
Contoh:
CREATE TABLE user
(
username VARCHAR(30) CONSTRAINT PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
Data Manipulation Language
DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang umum dilakukan adalah:
• SELECT untuk menampilkan data
• INSERT untuk menambahkan data baru
• UPDATE untuk mengubah data yang sudah ada
• DELETE untuk menghapus data
SELECT
SELECT adalah perintah yang paling sering digunakan pada SQL, sehingga terkadang istilah query dirujukkan pada perintah SELECT. SELECT digunakan untuk menampilkan data dari satu atau lebih tabel, biasanya dalam sebuah basis data yang sama. Secara umum, perintah SELECT memiliki bentuk lengkap: ( QUERY BUDIN ) Cilegon.
SELECT [nama_tabel|alias.]nama_field1 [AS alias1] [, nama_field2, ...]
FROM nama_tabel1 [AS alias1] [INNER|LEFT|RIGHT JOIN tabel2 ON kondisi_penghubung]
[, nama_tabel3 [AS alias3], ...]
[WHERE kondisi]
[ORDER BY nama_field1 [ASC|DESC][, nama_field2 [ASC|DESC], ...]]
[GROUP BY nama_field1[, nama_field2, ...]]
[HAVING kondisi_aggregat]
dengan:
• kondisi adalah syarat yang harus dipenuhi suatu data agar ditampilkan.
• kondisi_aggregat adalah syarat khusus untuk fungsi aggregat.
Kondisi dapat dihubungkan dengan operator logika, misalnya AND, OR, dan sebagainya.
Contoh:
Diasumsikan terdapat tabel user yang berisi data sebagai berikut.
username passwd tanggal_lahir jml_transaksi total_transaksi
Aris 6487AD5EF 09-09-1987 6 10.000
Budi 97AD4erD 01-01-1994 0 0
Charlie 548794654 06-12-1965 24 312.150
Daniel FLKH947HF 24-04-1980 3 0
Erik 94RER54 17-08-1945 34 50.000
Contoh 1: Tampilkan seluruh data.
SELECT *
FROM user
Contoh 2: Tampilkan pengguna yang tidak pernah bertransaksi.
SELECT *
FROM user
WHERE total_transaksi = 0
Contoh 3: Tampilkan username pengguna yang bertransaksi kurang dari 10 dan nilainya lebih dari 1.000.
SELECT username
FROM user
WHERE jml_transakai < 10 AND total_transaksi > 1000
Contoh 4: Tampilkan total nominal transaksi yang sudah terjadi.
SELECT SUM(total_transaksi) AS total_nominal_transaksi
FROM user
Contoh 5: Tampilkan seluruh data diurutkan berdasarkan jumlah transaksi terbesar ke terkecil.
SELECT *
FROM user
ORDER BY jml_transaksi DESC
Fungsi aggregat
Beberapa SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang melibatkan sekelompok data (aggregat). Secara umum fungsi aggregat adalah:
• SUM untuk menghitung total nominal data
• COUNT untuk menghitung jumlah kemunculan data
• AVG untuk menghitung rata-rata sekelompok data
• MAX dan MIN untuk mendapatkan nilai maksimum/minimum dari sekelompok data.
Fungsi aggregat digunakan pada bagian SELECT. Syarat untuk fungsi aggregat diletakkan pada bagian HAVING, bukan WHERE.
Subquery
Ada kalanya query dapat menjadi kompleks, terutama jika melibatkan lebih dari satu tabel dan/atau fungsi aggregat. Beberapa SMBD mengizinkan penggunaan subquery. Contoh:
Tampilkan username pengguna yang memiliki jumlah transaksi terbesar.
SELECT username
FROM user
WHERE jml_transaksi =
(
SELECT MAX(jml_transaksi)
FROM user
)
INSERT
Untuk menyimpan data dalam tabel dipergunakan sintaks:
INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES ([DAFTAR_NILAI])
Contoh:
INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test', 'alamat', 'pass');
UPDATE
Untuk mengubah data menggunakan sintaks:
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE [KONDISI]
Contoh:
UPDATE Msuser set password="123456" where username="abc"
DELETE
Untuk menghapus data dipergunakan sintaks:
DELETE FROM [NAMA_TABLE] [KONDISI]
Contoh:
DELETE FROM TEST WHERE NAMA='test';

Lanjutkan......

PEMBUATAN TABEL BARU

Perintah-perintah yang berkaitan dengan pendefinisian obyek-obyek basis data dan pembuatan tabel baru merupakan perintah-perintah yang tergolong dalam DDL ( data definition language ). Sebelum memulai membuat suatu tabel baru perlu diketahui tentang tipe data standart SQL yang berlaku. Bab yang terdahulu telah dibahas mengenai tipe-tipe data yang berlaku pada SQL. Pada dasarnya terdapat banyak sekali tipe data yang berlaku pada SQL namun hanya beberapa saja diantaranya yang diakui sebagai tipe data standart, dan diizinkan untuk digunakan pada periode standarisasi. Berikut ini adalah tipe-tipe data standart yang berlaku dalam SQL-92 :
• Char (n) : untuk atribut bernilai string dengan panjang tetap
• Varchar (n) : untuk atribut bernilai string dengan penjang fleksibel
• Int atau integer : untuk atribut berniali integer 2 byte
• Smallint : untuk stribut berniali integer 1 byte
• Numeric (p,d) : untuk atribut berniali pecahan fixed point
• Real, double, precision : untuk atribut bernilai pecahan floating point
• Float (n) : untuk atribut bernilai pecahan floating point dengan presisi n digit
• Date : untuk atribut bernilai penanggalan
• Time : untuk atribut bernilai waktu

PEMBUATAN TABEL BARU

Perintah-perintah yang berkaitan dengan pendefinisian obyek-obyek basis data dan pembuatan tabel baru merupakan perintah-perintah yang tergolong dalam DDL ( data definition language ). Sebelum memulai membuat suatu tabel baru perlu diketahui tentang tipe data standart SQL yang berlaku. Bab yang terdahulu telah dibahas mengenai tipe-tipe data yang berlaku pada SQL. Pada dasarnya terdapat banyak sekali tipe data yang berlaku pada SQL namun hanya beberapa saja diantaranya yang diakui sebagai tipe data standart, dan diizinkan untuk digunakan pada periode standarisasi. Berikut ini adalah tipe-tipe data standart yang berlaku dalam SQL-92 :
• Char (n) : untuk atribut bernilai string dengan panjang tetap
• Varchar (n) : untuk atribut bernilai string dengan penjang fleksibel
• Int atau integer : untuk atribut berniali integer 2 byte
• Smallint : untuk stribut berniali integer 1 byte
• Numeric (p,d) : untuk atribut berniali pecahan fixed point
• Real, double, precision : untuk atribut bernilai pecahan floating point
• Float (n) : untuk atribut bernilai pecahan floating point dengan presisi n digit
• Date : untuk atribut bernilai penanggalan
• Time : untuk atribut bernilai waktu

Sintak klausa pembuatan tabel baru :
crete table T ( A1 D1, A2 D2, …, An Dn )
Keterangan :
• T : merupakan nama tabel yang akan dibuat
• A1, A2, …, An : merupakan nama-nama tribut yang akan terdapat di dalan tabel
• D1, D2, …, Dn : merupakan domain nialai mesing-masing atribut tersebut yang ditentukan berdasarkan tipe datanya.


SQL :
1. Perintah dasar (bentuk dasar & bentuk lengkap)
2. Opsi DISTINCT
3. Mengganti tampilan judul kolom (alias untuk nama kolom)
4. Kondisi dengan Klausa WHERE dan HAVING
5. Kondisi jamak dengan operator AND, OR dan BETWEEN
6. Pola string dengan wildchar %, _ dan operator LIKE
7. Query dari beberapa tabel menggunakan WHERE
8. Aliasing nama tabel
9. Query dengan Operasi JOIN dan UNION
10. Pengurutan hasil Query
11. Query dengan fungsi agregasi
12. UPDATE, DELETE dan INSERT
13. SUBQUERY

JOIN :

mysql> help join
Name: 'JOIN'
Description:
MySQL supports the following JOIN syntaxes for the
table_references part of SELECT statements and multiple-table
DELETE and UPDATE statements:

table_reference, table_reference
table_reference [INNER | CROSS] JOIN table_reference [join_condition]
table_reference STRAIGHT_JOIN table_reference
table_reference LEFT [OUTER] JOIN table_reference [join_condition]
table_reference NATURAL [LEFT [OUTER]] JOIN table_reference
{ OJ table_reference LEFT OUTER JOIN table_reference
ON conditional_expr }
table_reference RIGHT [OUTER] JOIN table_reference [join_condition]
table_reference NATURAL [RIGHT [OUTER]] JOIN table_reference

table_reference is defined as:

tbl_name [[AS] alias]
[[USE INDEX (key_list)]
| [IGNORE INDEX (key_list)]
| [FORCE INDEX (key_list)]]

join_condition is defined as:

ON conditional_expr | USING (column_list)
Examples:
mysql> SELECT table1.* FROM table1
-> LEFT JOIN table2 ON table1.id=table2.id
-> WHERE table2.id IS NULL;
mysql>

Lanjutkan......

MANIPULASI DATA PADA SQL

Manipulasi data pada SQL merupakan tindakan pengubahan nilai-nilai data pada tabel yang telah ada sebelumnya. Manipulasi data terdiri dari tindakan penambahan record pada tabel, pengubahan nilai-nilai atribut, dan penghapusan record.

A. PENAMBAHAN RECORD
Sintak :
insert into T( A1, A2, …, An )
values ( V1, V2, …, Vn )
Keterangan :
• T : merupakan nama tabel yang akan ditambah nilai record pada atributnya.
• A : merupakan nama nama tribut pada tabel yang akan ditambah nilai recordnya.
• V : merupakan nilai-nilai record yang akan dimasukkan.

 Contoh 1
insert into KULIAH (KODE_KUL, NAMA_KULIAH, SEMESTER, SKS, KODE_DOSEN )
values (‘ S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)
Tampilannnya :
TABEL 5 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026
MANIPULASI DATA PADA SQL

Manipulasi data pada SQL merupakan tindakan pengubahan nilai-nilai data pada tabel yang telah ada sebelumnya. Manipulasi data terdiri dari tindakan penambahan record pada tabel, pengubahan nilai-nilai atribut, dan penghapusan record.

A. PENAMBAHAN RECORD
Sintak :
insert into T( A1, A2, …, An )
values ( V1, V2, …, Vn )
Keterangan :
• T : merupakan nama tabel yang akan ditambah nilai record pada atributnya.
• A : merupakan nama nama tribut pada tabel yang akan ditambah nilai recordnya.
• V : merupakan nilai-nilai record yang akan dimasukkan.

 Contoh 1
insert into KULIAH (KODE_KUL, NAMA_KULIAH, SEMESTER, SKS, KODE_DOSEN )
values (‘ S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)
Tampilannnya :
TABEL 5 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026

Untuk mendapatkan hasil yang sama ekspresi-ekspresi pada contoh klausa SQL diatas dapat disingkat menjadi sebagai berikut :
insert into KULIAH
values (‘S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)


 Contoh 2
insert into KULIAH
values (‘S002’, ‘ KALKULUS’, 4, 3, ‘L027’)
insert into DOSEN
values (‘L027’, ‘FARIDA’, ‘ KONTRAK’, ‘ KALIMANTAN’)
Tampilannya :
TABEL 6 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026
S002 KALKULUS 4 3 L027

TABEL 7 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA TETAP MEDAN
L023 GUNAWAN TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA
L027 FARIDA KONTRAK KALIMANTAN

 Contoh 3
insert into MAHASISWA (NIM, NAMA, SEX, FAK, PRODI )
values ( 9961055, ‘ MAHARANI’, ‘ P’, ‘MIPA’, ‘ ILKOM’ )
Tampilannya :
TABEL 8 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM
9961055 MAHARANI P MIPA ILKOM


B. PENGHAPUSAN RECORD
Sintak :
delete from T
where ( kondisi / keadaan )
Keterangan :
• T : nama tabel yang akan dihapus salah satu atau beberapa dari record dalam atributnya.
• Kondisi / keadaan : atribut-atribut beserta record-record yang akan dihapus. Jika klausa where tidak digunakan maka penghapusan akan dilakukan pada semua record di dalam tabel.

 Contoh 1
delete from KULIAH
where KODE_DOSEN = ‘L026’ AND KODE_KUL = ‘ K001’
Tampilannya :
TABEL 9 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
S001 KEWIRAAN 4 2 L026
S002 KALKULUS 4 3 L027

 Contoh 2
delete from KULIAH
where KODE_ DOSEN= ‘L026’
Tampilannya :
TABEL 2 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
S002 KALKULUS 4 3 L027


C. PENGUBAHAN NILAI-NILAI ATRIBUT
Pengubahan nilai atribut dapat menggunakan perintah update, perintah ini berfungsi memperbaharui atau meng-update satu atau lebih dari satu baris atau sekelompok baris didalam tabel.
Sintak :
update T
set KOLOM = VALUES
where ( kondisi / keadaan )
Keterangan :
• T : nama tabel yang akan mengalami perubahan record
• KOLOM : nama atribut pada tabel yang akan mengalami perubahan nilai record
• VALUES : nilai baru record pada atribut dalam tabel yang akan menggantikan nilai lama.
• Kondisi / keadaan : keadaan yang menentukan record nama yang akan mengalami update / perubahan nilai. Jika klausa where tidak digunakan pada ekspresi maka, perubahan akan dilakukan pada semua record di dalam tabel.

 Contoh 1
update MAHASISWA
set ASAL = ‘ KENDARI’
where NIM = 9961003
Tampilannya :
TABEL 10 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L KENDARI 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 2
update MAHASISWA
set FAK = ‘ TI’, PRODI = ‘T_KIMIA’
where NIM = 9961002

Tampilannya :
TABEL 11 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L KENDARI 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 3
update DOSEN
set NAMA_DOSEN = NAMA_DOSEN + ‘ , Ssi ’
where STATUS = ‘ TETAP’

Tampilannya :
TABEL 12 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA, Ssi TETAP MEDAN
L023 GUNAWAN, Ssi TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI, Ssi TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA
L027 FARIDA KONTRAK KALIMANTAN



Lanjutkan......

STRUKTUR DASAR SQL

Sebuah ekspresi SQL dasar sebenarnya hanya terdiri dari tiga klausa yaitu; klausa where, from, dan where.
• Klausa select : digunakan untuk menetapkan daftar atribut yang diinginkan sebagai query.
• Klausa from : digunakan untuk menetapkan tabel ( atau gabungan tabel ) yang akan ditelusuri selama query data dilakukan.
• Klausa where : digunakan untuk predikat ( sebagai kriteria ) yang harus dipenuhi dalam memperoleh hasil query.

Sintaks ( cara penulisan ) pada ekspresi SQL dasar yang memanfaatkan tiga klausa tersebut adalah :
select A1 [ ,A2, …,An]
from T1 [ , T2, …,Tn]
[ where P ]
keterangan :
• A1, A2, …, An : daftar atribut
• T1, T2, …, Tn :daftar tabel
• P : predikat query
• [ ] : tanda opsional ( boleh digunakan boleh tidak )

STRUKTUR DASAR SQL

Sebuah ekspresi SQL dasar sebenarnya hanya terdiri dari tiga klausa yaitu; klausa where, from, dan where.
• Klausa select : digunakan untuk menetapkan daftar atribut yang diinginkan sebagai query.
• Klausa from : digunakan untuk menetapkan tabel ( atau gabungan tabel ) yang akan ditelusuri selama query data dilakukan.
• Klausa where : digunakan untuk predikat ( sebagai kriteria ) yang harus dipenuhi dalam memperoleh hasil query.

Sintaks ( cara penulisan ) pada ekspresi SQL dasar yang memanfaatkan tiga klausa tersebut adalah :
select A1 [ ,A2, …,An]
from T1 [ , T2, …,Tn]
[ where P ]
keterangan :
• A1, A2, …, An : daftar atribut
• T1, T2, …, Tn :daftar tabel
• P : predikat query
• [ ] : tanda opsional ( boleh digunakan boleh tidak )

A. KLAUSA SELECT
Sesuai dengan penjelasan diatas bahwa klausa select digunakan untuk menetapkan daftar atribut yang dinginkan sebagai hasil query, maka berikut ini akan dijelaskan lebih lanjut tentang klausa select dengan menyertakan contohnya.
Sebagai contoh pada tabel mahasiswa berikut;
TABEL 1 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM


Contoh perintah select:
 Contoh 1
select NAMA
from MAHASISWA
Ekspresi diatas memerintahkan untuk menampilkan nama mahasiswa dari tabel mahasiswa yang telah ada. Sehingga tampilannya :
NAMA
BUDI
NINA
ABI
DONI
ANI
 Contoh 2
select NIM, NAMA, SEX
from MAHASISWA
Ekspresi diatas memberikan perintah untuk menampilkan NIM, nama mahasiswa, dan jenis kelaminnya dari tabel mahasiswa. Tampilannya :
NIM NAMA SEX
9961001 BUDI L
9961002 NINA P
9961003 ABI L
9961004 DONI L
9961005 ANI P

 Contoh 3
select distinct SEX
from MAHASISWA
Pada tabel mahasiswa tersebut jenis kelamin ditulis secara berulang-ulang, dengan perintah distinct ini maka penulisan kan ditulis sekali saja. Kasus lain ; misalkan dalam sebuah tabel mahasiswa terdapat nama mahasiswa yang sama maka bila menggunakan ekspresi distinct maka nama yang sama hanya ditampilkan satu saja. Keunikan diatas hanya untuk nilai atribut yang disebutkan dalam klausa select, bukan pada keseluruhan atribut yang ada di tabel yang disebutkan pada klausa form. Tampilan dari contoh di atas adalah :
SEX
L
P

 Contoh 4
select *
from MAHASISWA
Ekpresi diatas menampilkan seluruh atribut yang ada pada tabel yang disebutkan pada klausa form. Tampilannya :

NIM NAMA SEX ASAL TGL_LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 5
select NIM, NAMA as NAMA_MHS, SEX as JENIS_KELAMIN
from MAHASISWA

Fungsi dari ekspresi as pada select adalah untuk mengganti tampilan header ( kepala tampilan tabular ). Tampilannya menjadi :

NIM NAMA_MHS JENIS_KELAMIN
9961001 BUDI L
9961002 NINA P
9961003 ABI L
9961004 DONI L
9961005 ANI P

B. KLAUSA WHERE
Klausa ini digunakan untuk menetapkan predikat atau kriteria yang harus dipenuhi dalam menampilkan query. Klausa ini boleh tidak digunakan, yang artinya query dilakukan untuk semua record di dalam tabel yang disebutkan pada klausa from. Berikut ini akan diberikan contoh beserta penjelasan dari pemanfaatan klausa where. Contoh- contoh yang akan diberikan mengacu pada tabel kuliah berikut ini ;


TABEL 2 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026

 Contoh 1
select *
from KULIAH
where KODE_KUL = ‘ M001 ‘
Ekpresi diatas digunakan untuk menampilkan semua atribut untuk mata kuliah dengan kode mata kuliah M001. Nilai M001 diapit dengan tanda kutip tunggal. Penggunaan tanda kutip ini berlaku untuk nilai yang bertipe string ( sesuai dengan type dari atribut kode kuliah ). Sehingga tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022

 Contoh 2
Select *
From KULIAH
Where SEMESTER = 6 and SKS >= 3
Ekspresi diatas menerapkan penggunaan predikat dengan operator relasi, serta mengkombinasikannya dengan operator logika. Maksud dari ekspresi diatas adalah menampilkan semua atribut dari tabel kuliah yang termasuk dalam kriteria semester 6 dan memiliki jumlah sks lebih dari atau sama dengan 2. Nilai 6 dan 3 diatas tidak diapit dengan tanda kutip tunggal. Hal ini dikarenakan nilai tersebut bertype numeric ( sesuai dengan type atributnya ). Tampilannya :
KODE_KUL NAMA_KULIAH SEMESTER SKA KODE_DOSEN
M001 BASIS DATA 6 3 L022
P001 SIMULASI 6 2 L024

 Contoh 3
select *
from KULIAH
where SEMESTER between 3 and 5
Query dengan kriteria yang berbentuk range nilai tertentu dapat menggunakan tambahan klausa between. Pada contoh diatas akan menampilkan record-record kuliah yang diselenggarakan antara semester 3 s/d semster 5. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M002 OR-KOM 3 3 L023
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026

 Contoh 4
Select *
From KULIAH
Where NAMA_KULIAH like ‘ S%’
Untuk atribut yang bertype string dapat melakukan pencarian dengan pola tertentu, dengan memanfaatkan karakter percent ‘ % ‘atau ‘ _ ‘, dengan menambahkan klausa like pada klausa where. Pada contoh diatas akan menampilkan record-record KULIAH yang nama mata kuliahnya diawali dengan huruf ‘ S ‘. Sehingga tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025

 Contoh 5
Select *
from KULIAH
where NAMA_KULIAH like ‘ _ A% ‘

Ekspresi diatas akan menampilkan record-record pada tabel kuliah tentang mata kuliah yang huruf / karakter dari nama mata kuliah nya adalah ‘ A ‘. Tamplannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
K001 PANCASILA 3 2 L026

C. KLAUSA FROM
Klausa ini digunakan untuk menetapkan tabel yang kita jadikan sebagai sumber pencarian data. Basis data terdiri dari beberapa tabel yang saling berhubungan, oleh karena itu sering kali dibutuhkan query dari satu tabel atau dari lebih dari satu tabel sekaligus. Atribut-atribut yang akan kita tampilkan dalam hasil query tidak hanya berasal dari satu tabel , namun bisa jadi dari sejumlah tabel, pada kasus seperti inilah klausa from akan sangat berperan penting. Pada contoh-contoh terdahulu hanya ditampilkan query dari satu tabel. Namun untuk ulasan kali ini akan diberikan contoh query yang menggambarkan hubungan antar tabel.

TABEL 3 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA TETAP MEDAN
L023 GUNAWAN TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA

Tabel dosen diatas akan direlasikan dengan tabel kuliah yang telah dibuat sebelumnya.
 Contoh 1
select *
from KULIAH, DOSEN
where KULIAH . KODE_DOSEN = DOSEN . KODE_DOSEN
Untuk melakukan query antara dua tabel atau lebih, tidak bisa dilakukan dengan sembarangan. Tabel_tabel yang akan dijadikan query haruslah memiliki hubungan. Pada contoh diatas hubungan pada tabel kuliah dengan tabel dosen diwakili oleh kode dosen, dimana atribut ini dimiliki oleh kedua tabel tersebut. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN NAMA_DOSEN STATUS ASAL
M001 BASIS DATA 6 3 L022 ISMAYA TETAP MEDAN
M002 OR_KOM 3 3 L023 GUNAWAN TETAP LAMPUNG
P001 SIMULASI 6 2 L024 BUDIHARJO KONTRAK SRAGEN
F001 SISTEM BERKAS 4 3 L025 WARDATI TETAP SEMARANG
K001 PANCASILA 3 2 L026 HARTATI KONTRAK JAKARTA

 Contoh 2
Select *
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN
Ekspresi diatas merupakan contoh penggunaan alias, dimana tabel kuliah dialiaskan dengan K dan tabel dosen dialiaskan dengan D. tampilan yang akan diperoleh sama dengan tampilan diatas.
 Contoh 3
select K.KODE_KUL, K.NAMA_KULIAH, D.NAMA_DOSEN
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN

Ekspresi di atas akan menampilkan record-record pada atribut kode kuliah, nama mata kuliah dari tabel kuliah dan record-record dari atribut nama dosen dari tabel dosen. Tampilannya adalah :
KODE_KUL NAMA_KULIAH NAMA_DOSEN
M001 BASIS DATA ISMAYA
M002 OR-KOM GUNAWAN
P001 SIMULASI BUDIHARJO
F001 SISTEM BERKAS WARDATI
K001 PANCASILA HARTATI

 Contoh 4
select K . KODE_KUL as KODE, K . NAMA_KULIAH as KULIAH, D . NAMA_DOSEN as DOSEN
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN
and SEMESTER = 4

Ekspresi diatas akan menampilkan record-record pada atribut kode kuliah dengan nama baru yaitu kode, atribut nama kuliah dengan nama baru yaitu kuliah dan atribut nama dosen dengan nama baru yaitu dosen. Atribut- atribut tersebut diambil dari tabel kuliah dan tabel dosen, dengan syarat kuliah yang ditampilkan diajarkan pada semester 4. Tampilanya adalah :
KODE KULIAH DOSEN
F001 SISTEM BERKAS WARDATI

D. PENGURUTAN HASIL QUERY
Pengurutan record-record hasil query disesuaikan dengan struktur penyimpanan yang kita terapkan pada tabel query. Terdapat dua jenis struktur penyimpanan, yaitu :
1. Struktur penyimpanan heap
Dimana pada struktur penyimpaanan ini hasil query akan ditampilkan berdasarkan kronologis ( waktu ) penyimpanan.
2. Struktur penyimpanan sekuensial berindeks
Pada struktur penyimpanan ini hasil query akan ditampilkan sesuai dengan atribut yang menjadi dasar indeks.
Terdapat dua jenis mode pengurutan, yaitu pengurutan naik dan pengurutan turun. Kedua mode pengurutan tersebut sama-sama mengunakan klausa order by, hanya saja pada pengurutan turun ditambahkan dengan klausa desc pada klausa order by nya. Berikut ini adalah contoh pengurutan hasil query;
 Contoh 1
Select *
from KULIAH
order by NAMA_KULIAH

Ekspresi diatas akan menampilkan query dengan urutan naik berdasarkan nama mata kuliah. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
K001 PANCASILA 3 2 L026
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025

 Contoh 2
select *
from KULIAH
order by NAMA_KULIAH desc
Ekspresi diatas akan menampilkan query dengan urutan turun berdasarkan nama mata kuliah. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
F001 SISTEM BERKAS 4 3 L025
P001 SIMULASI 6 2 L024
K001 PANCASILA 3 2 L026
M002 OR-KOM 3 3 L023
M001 BASIS DATA 6 3 L022

Contoh penggunaan klausa dasar SQL, yang melibatkan empat buah tabel sekaligus, yaitu tabel MAHASISWA, tabel KULIAH, tabel DOSEN serta tabel NILAI;
TABEL 4 : NILAI
NIM KODE_KUL KODE_NILAI
9961001 M001 B
9961001 P001 A
9961002 M002 C
9961002 P001 C
9961003 K001 A
9961004 F001 A
9961004 M002 C
9961005 F001 C
9961005 K001 B

Contoh berikut akan menampilkan kartu hasil studi dari seorang mahasiswa berdasarkan pada NIM nya.

select
N . NIM, M . NAMA as NAMA_MHS, K . NAMA_KUL, D . NAMA_DOSEN, N . KODE_NILAI
from
MAHASISWA M,
KULIAH K,
DOSEN D,
NILAI N
where N . NIM = M . NIM and
N . KODE_KUL = K . KODE_KUL and
D . KODE_DOSEN = K . KODE_DOSEN and NIM = ‘9961001’

Lanjutkan......

DASAR-DASAR SQL

SQL menyediakan peritah dan fungsi dalam jumlah yang cukup banyak untuk menunjang aktifitas yang berhubungan dengan penelitian dan manipulasi data pada DBMS. Berikut ini akan diuraikan mengenai dasar-dasar SQL;

 JENIS DEKLARASI PADA SQL

Deklarasi atau perintah dalam SQL dikategorikan menjadi dua yaitu DDL ( data definition language ) dan DML ( data manipulation language ), kategori ini didasarkan pada karakteristik dan fungsi dari masing-masing.

A. DDL ( data definition language )
DDL adlah bagian dari SQL yang digunakan untuk mendefinisikan data dan obyek pada basis data. Perintah-perintah yang tergolong pada kategori ini adalah:

DASAR-DASAR SQL

SQL menyediakan peritah dan fungsi dalam jumlah yang cukup banyak untuk menunjang aktifitas yang berhubungan dengan penelitian dan manipulasi data pada DBMS. Berikut ini akan diuraikan mengenai dasar-dasar SQL;

 JENIS DEKLARASI PADA SQL

Deklarasi atau perintah dalam SQL dikategorikan menjadi dua yaitu DDL ( data definition language ) dan DML ( data manipulation language ), kategori ini didasarkan pada karakteristik dan fungsi dari masing-masing.

A. DDL ( data definition language )
DDL adlah bagian dari SQL yang digunakan untuk mendefinisikan data dan obyek pada basis data. Perintah-perintah yang tergolong pada kategori ini adalah:

PERINTAH KETERANGAN
CREATE TABLE
CREATE INDEX
ALTER TABLE
DROP TABLE
DROP INDEX
GRANT Membuat tabel
Membuat index
Mengubah atau menyisipkan kolom ke tabel
Menghapus tabel dari basis data
Menghapus index
Memberi izin akses pada pemakai

B. DML ( data manipulation language )
DML adalah bagian dari SQL yang digunakan untuk memulihkan dan memanipulasi data. Perintah ini digunakan untuk memberikan query dan perubahan yang dilakukan di dalam tabel. Perintah-perintah yang tergolong dalam kategori ini adalah :

PERINTAH KETERANGAN
SELECT

INSERT
DELETE
UPDATE
COMMIT
ROLLBACK Perintah utama dari SQL. Digunakan untuk memilih data dari tabel
Menyisipkan baris pada tabel
Menghapus baris pada tabel
Mengubah isi kolom pada tabel
Menuliskan perubahan pada disk
Membatalkan perubahan dari perintah COMMIT

 TIPE-TIPE DATA

Tipe data digunakan ketika membuat suatu tabel, pemakai harus menentukan informasi tertentu pada saat pembuatan tabel. Ada beberapa tipe data yang disimpan dalam basis data, diantaranya adalah :

INTEGER KETERANGAN
BIT
INT

SMALLINT
TINYINT
DECIMAL / NUMERIC
MONEY


SMALLMONEY

FLOAT
REAL
DATETIME
SMALLDATETIME Integer dengan niali 0 atau 1
Nilai interger antara –2.147.483.648 s/d 2.147.483.647
Nilai antara –32.768 s/d 32.767
Nilai antara 0 s/d 255
Akurasi angka tetap antara –10^38-1s/d 10^38-1
Data moneter dari –2^63 s/d 2^63-1, dengan tingkat akurasi hingga sepersepuluh ribu unit moneter
-214.748,3648 s/d 214.748,3647 dengan tingkat akurasi sepersepuluh ribu unit moneter
-1.79E+308 s/d 1.79E+308
-3.40E+38 s/d 3.40E+38
1 januari 1753 s/d 31 desember 9999
1 januari 1900 s/d 6 juni 2079

RUPA-RUPA KETERANGAN
CURSOR
TIMESTAMP
UNIQUEIDENTIFIER Referensi ke kursosr
Angka eklusif yang dikenali oleh basas data
Pengenal global yang eklusif

STRING KETERANGAN
CHAR
VARCHAR
TEXT Field tetap dengan ukuran max 8000 byte
Field tetap dengan ukuran max 8000 byte
Variabel dengan ukuran 2^31-1 byte


UNICODE STRING KETERANGAN
NCHAR
NVARCHAR

NTEXT Karakter unicode dengan ukuran 4000 byte
Karter unicode dengan ukuran berfariasi 4000 byte
Variaber berukuran 2^30-1 byte

BINARY STRING KETERANGAN
BINARY
VARBINARY
IMAGE Ukuran tetap hingga 8000 byte
Ukuran bervariasi 8000 byte
Ukuran bervariasi hingga 2^31-1 byte


 EKSPRESI DAN OPERATOR
Pada SQL operator bertindak berdasarkan operand, yaitu elemen yang dianalisa oleh operator. Terdapat dua jenis operator, yaitu operator unary yang bertindak berdasarkan satu operand saja, dan operator binary yang bertindak berdasarkan dua atau lebih operator. Apabila pada sebuah ekspresi terdapat lebih dari satu operator, maka operator-operator tersebut akan dievaluasi berdasarkan urutan sebagai berikut ;

• + ( positif ), - ( negatif ), ~ ( bitwise NOT )
• * ( perkalian ), / ( pembagian ), % ( modulus )
• + ( penjumlahan ), + ( penggabungan ), - ( pengurangan )
• +, >, <, >=, <=, <>, !=, !>, !< • ^ ( bitwise exclusive OR ), & ( bitwise AND ), | ( bitwise OR ) • NOT • AND • ALL, ANY, BETWEEN, IN, LIKE, OR, SOME • = ( penugasan )

Lanjutkan......

PERKEMBANGAN BASIS DATA SAAT INI

Sejak tahun 1960-an penggunaan basis data sudah digunakan untuk bidang
komersial, dimana pemrosesan file-nya masih berbasis manajemen file tradisional.
Perkembangan komputer yang semakin pesat diikuti dengan perkembangan
perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an sampai awal tahun 1980
manajemen berbasis file tradisional berkembang menjadi manajemen basis data.
Di dalam manajemen basis data dikenal berbagai model data yang dapat
digunakan untuk mendeskripsikan sebuah data dalam merancang suatu basis data.
Manajemen ini memungkinkan banyak user untuk mengakses data secara
bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin banyak
yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery data,
keamanan data dan didukung dengan fasilitas komunikasi data karena manajemen
ini sudah terhubung dengan suatu jaringan .
PERKEMBANGAN BASIS DATA SAAT INI

Sejak tahun 1960-an penggunaan basis data sudah digunakan untuk bidang
komersial, dimana pemrosesan file-nya masih berbasis manajemen file tradisional.
Perkembangan komputer yang semakin pesat diikuti dengan perkembangan
perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an sampai awal tahun 1980
manajemen berbasis file tradisional berkembang menjadi manajemen basis data.
Di dalam manajemen basis data dikenal berbagai model data yang dapat
digunakan untuk mendeskripsikan sebuah data dalam merancang suatu basis data.
Manajemen ini memungkinkan banyak user untuk mengakses data secara
bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin banyak
yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery data,
keamanan data dan didukung dengan fasilitas komunikasi data karena manajemen
ini sudah terhubung dengan suatu jaringan .
Perkembangan dunia usaha semakin meningkat ditunjang dengan perkembangan
komunikasi yang mempermudah organisasi atau perusahaan untuk mengakses data,
sehingga mengubah manajemen basis data menjadi manajemen basis data tingkat
lanjut didukung dengan fasilitas data warehousing dan fasilitas basis data berbasis
web sebagai salah satu strategi organisasi dalam meningkatkan kinerja dan
keuntungan organisasi.

A. ORDBMS

A.1. ORDBMS (Object Relational Database Management System)
Penggunaan teknologi RDBMS pada awalnya sangat dominan, tetapi
dikarenakan fasilitas–fasilitas yang ada pada RDBMS tidak lagi sesuai
dengan aplikasi tingkat lanjut, maka RDBMS digantikan dengan
OODBMS. Pada OODBMS terdapat banyak sekali bentuk-bentuk object
oriented seperti metode encapsulation, inheritance, polymorphism, dll.
Model data relasional lanjutan tidak hanya ada satu , tetapi terdapat
berbagai macam model data, dimana karakteristik dan tingkat kebutuhan
data yang telah dibuat. Bagaimanapun semua model data yang akan
digunakan mengacu pada konsep objek dan mempunyai kemampuan
untuk menyimpan data di dalam database.
Berbagai macam terminologi yang digunakan untuk sistem model
relasional tingkat lanjut yaitu ERDBMS. Tapi sekarang ini untuk sistem
berbasis objek dapat digunakan OODBMS.
Inti dari kinerja RDBMS yaitu ada pada optimasi queri-nya dan juga
pengetahuan mengenai bagaimana mengeksekusi fungsi dari user-define
secara efisien, mengambil keuntungan dari pengindeksan pada struktur
yang baru, memetakan queri dengan cara baru, dan menavigasi antara
data menggunakan referensi data.
Penggunaan OODBMS untuk suatu organisasi yang sangat besar dan
universal tidak lagi sesuai sehingga untuk mendukung kinerja dari
organisasi tersebut dibutuhkan suatu ORDBMS (Objeck Relational
Database Management System).
ORDBMS memiliki fasilitas untuk mendefinisikan data yang kompleks,
menspesialisasikan struktur indeks dibutuhkan untuk mengefisienkan
pengambilan data. ORDBMS digunakan untuk dua sampai tiga
dimensional data.
A.2. Perbandingan antara OODBMS dan ORDBMS
Pemodelan Data
Model OODBMS ORDBMS
Identitas Objek ada Ada dengan tipe REF
(Refferences)
Pengkapsulan Ada, tapi tidak dapat
digunakan untuk queri
Ada dengan UDT (User
Defined Types)
Penurunan Ada Ada (dipisahkan antara
UDT dan Table)
Polymorphism Ada, sebagai object
oriented pada model bahasa
pemrograman
Ada
Objek kompleks Ada Ada, dengan UDT
Relasi Ada Sangat mendukung untuk
mendefinisikan batasan
referensial integritas
B. Data Warehousing
B.1. Konsep Data Warehousing
Konsep dasar dari data warehousing adalah informasi yang dikumpulkan
dalam suatu gudang penyimpanan dan merepresentasikan solusi untuk
pengaksesan data didalam sistem non relasional. Sehingga data
warehousing dapat disebut sebagai database yang berorientasi pada
subyek, terintegrasi, mempunyai Time Variant dan bersifat non volatile
untuk kumpulan data yang mendukung dalam pengambilan keputusan.
• Berorientasi subyek artinya mengatur semua subyek utama pada
suatu organsisasi yang memfokuskan pada basis datanya bukan pada
aplikasi yang digunakan untuk pengambilan keputusan.
• Terintegrasi artinya pemakaian data bersama-sama sering
menyebabkan data tidak konsisten sehingga cara pandang user
terhadap data menjadi tidak sama. Agar terintegrasi pembentukan
sumber data harus standar dan konsisten.
• Time Variant, data yang ada pada gudang hanya valid dan akurat
pada titik waktu tertentu atau interval tertentu.
• Non-volatile, data tidak di-update secara real time tetapi selalu
diperbaharui dari sistem operasi pada database yang ada.
B.2. Keuntungan dari Data Warehousing
1. Hasil yang diperoleh dari investasi lebih tinggi
2. Kompetitif
3. Meningkatkan produktivitas perusahaan
Sistem Basis Data
Perkembangan Database Saat Ini Hal 4 dari 5
Jenis database yang tersimpan di dalam media penyimpanan data berdasarkan
penggunaan data :
• Database yang memiliki data sering di-update disebut data OLTP (Online
Transaction Processing). Data OLTP sering juga disebut data operasional,
mencerminkan sifat aplikasi database yang dinamik.
• Database yang memiliki data sering digunakan untuk query disebut DSS
(Decision Support System). Data DSS sering disebut data analitikal,
mencerminkan sifat aplikasi database yang relatif statik.
Data Operasional Data DSS
Berorientasi pada aplikasi : data
digunakan untuk proses bisnis. Sebagai
contoh : sistem perbankan dengan file
terpisah yang sudah dalam bentuk
normal untuk setiap proses bisnis.
Berorientasi pada subyek : data
digunakan untuk subyek bisnis, misal
informasi nasabah. Data dalam bentuk
denormalisasi dimana sebuah record
dapat meliputi keseluruhan proses bisnis.
Data terperinci Data ringkas
Struktur statik Struktur dinamik
Target operator komputer Target pengambil keputusan pada
seluruh tingkatan
Volatile (data dapat diubah) Non volatile (data tidak bisa diubah
setelah dimasukkan)
Kebutuhan data selalu diketahui sebelum
rancangan sistem
Kebutuhan data sama sekali tidak
diketahui sebelum rancangan sistem
Mengikuti siklus hidup pengembangan
klasik dimana iterasi rancangan
diselesaikan melalui normalisasi data,
dan memeriksa kebutuhan pemakai
Siklus hidup pengembangan sama sekali
berbeda, dimana pemakai menggunakan
aplikasi struktur data yang ada dan
membuat rancangan siap untuk dianalisis
Performansi penting karena jumlah
pemakai konkuren sangat besar dalam
mengakses data
Masalah performansi lebih longgar
Karena jumlah pemakai jauh lebih sedikit
dalam mengakses data sehingga tidak
ada masalah konkuren yang perlu
diperhatikan.
Penggerak-transaksi (Transaction-driven) Penggerak-analisis (Analysis-driven)
Data harus selalu tersedia untuk pemakai
akhir (back up dan recovery harus
terencana dengan baik)
Tidak mempunyai tingkat kebutuhan
ketersediaan data yang sama
(perencanaan back up dan recovery lebih
longgar)
Mencerminkan situasi mutakhir Mencerminkan nilai historis
C. Data Mart
Untuk mencapai suatu data warehouse kelihatannya merupakan suatu
tantangan besar dan memang demikian. Bahkan begitu besarnya sehingga
beberapa pakar menyarankan pendekatan yang lebih sederhana yaitu
menerapkan sesuatu yang dinamakan data mart. Data mart adalah database
yang berisikan data yang menjelaskan satu segmen operasi perusahaan.
Misalnya perusahaan mungkin memiliki data mart pemasaran, data mart smber
daya manusia, dsb.
Sistem Basis Data
Perkembangan Database Saat Ini Hal 5 dari 5
D. Data Mining
Istilah yang sering digunakan bersama-sama dengan data warehouse dan data
mart adalah data mining. Data mining adalah proses menemukan hubungan
dalam data yang tidak diketahui oleh pemakai. Data mining membantu pemakai
dengan mengungkapkan berbagai hubungan dan menyajikannya dengan suatu
cara yang dapat dimengerti sehingga dapat menjadi dasar pengambilan
keputusan. Data mining memungkinkan pemakai “menemukan pengetahuan”
pada database yang dalam sepengetahuannya tidak ada.
Contoh Data Mining :
Sebuah bank telah memutuskan untuk menawarkan reksadana kepada para
pelanggannya. Manajemen bank ingin mengarahkan materi promosi pada
segmen pelanggan yang memberikan potensi bisnis terbesar.
• Data Mining Berdasarkan Verifikasi. Pendekatan yang dilakukan oleh
para manajer adalah mengidentifikasi karakteristik yang mereka yakin
dimiliki oleh pasar sasaran. Misalkan para manajer ingin mengarah pada
pasangan muda, berpenghasilan ganda, dan kaya. Query dapat
dimasukkan ke dalam DBMS, dan catatan yang tepat dapat dipanggil.
Pendekatan yang seperti itu, yang mulai dengan hipotesis pemakai tentang
bagaimana data tersebut terstruktur, disebut data mining berdasarkan
verifikasi (verification-driven data mining). Kekurangan pendekatan ini
adalah proses pemanggilan kembali diarahkan sepenuhnya oleh pemakai.
Informasi yang dipilih tidak lebih baik daripada pandangan pemakai
terhadap data tersebut. Ini merupakan cara tradisional untuk bertanya pada
database.
• Data Mining Berdasarka Penemuan. Pendekatan lain memungkinkan
sistem data mining mengidentifikasi pelanggan terbaik untuk promosi
tersebut. Sistem itu menganalisis database, mencari kelompok-kelompok
dengan karakteristik umum. Dalam contoh bank, sistem data mining
mungkin mengidentifikasi bukan hanya kelompok pasangan muda lulusan
universitas tetapi juga pasangan yang sudah pensiun yang bergantung
pada jaminan sosial dan pensiun. Sistem data mining dapat melaksanakan
analisis selangkah lebih jauh, dengan merekomendasikan satu set promosi
yang diarahkan pada kedua kelompok tersebut.
• Kombinasi Data Mining Verifikasi dan Penemuan. Perkembangan data
mining di masa depan akan mengkombinasikan pendekatan hipotesis dan
penemuan. Perkembangan ini menggunakan penalaran yang sama yang
mendasari konsep Sistem Pendukung Keputusan (Decision Support
System – DSS). Konsep tersebut memungkinkan pemakai dan komputer
bekerja sama untuk memecahkan suatu masalah. Pemakai menerapkan
keahliannya dalam hal masalah, dan komputer melakukan analisis data
yang canggih untuk memilih data yang tepat dan menempatkannya dalam
format yang tepat untuk pengambilan keputusan.

Lanjutkan......

PEMODELAN DATA BASE

Model Data pada hakekatnya adalah kumpulan perangkat konseptual untuk menggambarkan data, relasi data, makna (semantik) data, dan batasan data. Ada sejumlah cara dalam merepresentasikan Model Data untuk keperluan perancangan basis data, yaitu dikelompokkan sebagai berikut:
• Model Hirarkis (Hierarchical Model)
• Model Jaringan (Network Model)
• Model Relasional (Relational Model)
• Model Relasi Entitas (Entity-Relationship Model)
• Model Berbasis Objek (Object Oriented Model)

1. Model Data Hirarkis
Model data hirarkis adalah model data paling tua yang pernah diterapkan dalam suatu DBMS. Model ini mengikuti pola hirarki pada suatu organisasi atau pada suatu keluarga, dimana terdapat rekaman data yang berfungsi sebagai “bapak” (parent-record) ada yang berfungsi sebagai “anak” (child-record), atau sebagai “pimpinan’ dan “anak-buah”. Dalam model ini seorang “bapak” bisa memiliki lebih dari satu “anak” tetapi seorang “anak” hanya boleh memiliki satu “bapak”.
Sebagai contoh basis-data yang menggambarkan rencana studi mahasiswa dimana seorang mahasiswa boleh mengambil beberapa matakuliah.
PEMODELAN DATA BASE
Model Data pada hakekatnya adalah kumpulan perangkat konseptual untuk menggambarkan data, relasi data, makna (semantik) data, dan batasan data. Ada sejumlah cara dalam merepresentasikan Model Data untuk keperluan perancangan basis data, yaitu dikelompokkan sebagai berikut:
• Model Hirarkis (Hierarchical Model)
• Model Jaringan (Network Model)
• Model Relasional (Relational Model)
• Model Relasi Entitas (Entity-Relationship Model)
• Model Berbasis Objek (Object Oriented Model)

1. Model Data Hirarkis
Model data hirarkis adalah model data paling tua yang pernah diterapkan dalam suatu DBMS. Model ini mengikuti pola hirarki pada suatu organisasi atau pada suatu keluarga, dimana terdapat rekaman data yang berfungsi sebagai “bapak” (parent-record) ada yang berfungsi sebagai “anak” (child-record), atau sebagai “pimpinan’ dan “anak-buah”. Dalam model ini seorang “bapak” bisa memiliki lebih dari satu “anak” tetapi seorang “anak” hanya boleh memiliki satu “bapak”.
Sebagai contoh basis-data yang menggambarkan rencana studi mahasiswa dimana seorang mahasiswa boleh mengambil beberapa matakuliah.


Model Data Hirarkis

Pada model diatas tidak direpresentasikan bahwa satu matakuliah diambil oleh beberapa mahasiswa, karena berarti menyalahi aturan dimana satu “anak” (kuliah) memiliki banyak “bapak” (mahasiswa). Model diatas akan menyebabkan timbulnya “redudansi” data, karena banyak kemungkinan bahwa matakuliah yang sama diambil oleh beberapa mahasiswa, sehingga record-matakuliah tersebut direkam berkali-kali dibawah record-mahasiswa yang mengambilnya. Disamping itu apabila ada matakuliah yang tidak diprogram-kan oleh mahasiswa maka ada kemungkinan record-nya tidak ada dalam database karena tidak memiliki parent.


Contoh model hirarkis yang menunjukkan hubungan Dosen-MataKuliah-Mahasiswa dapat pula digambarkan dalam bentuk diagram sebagai berikut.


Diagram Hirarkis Dosen-Matakuliah-Mahasiswa

Perhatikan dalam model hirarki diatas, data mahasiswa yang sama terpaksa direkam berulang ketika mahasiswa tersebut memprogramkan lebih dari satu matakuliah.
Model hirarkis ini pernah di-implementasikan oleh IBM pada sebuah DBMS yang diberi nama IMS (Information Management System) namun kemudian di-kalahkan oleh implementasi model yang lebih mutakhir seperti model Data Relasional seperti Rbase, dsb.












2. Model Data Jaringan
Model data jaringan adalah pengembangan dari model data hirarkis, melihat kekurangan dari model hirarkis tersebut. Pada model jaringan diperkenankan bahwa sebuah child-record bisa memiliki lebih dari satu parent-record. Pada implementasi-nya berarti antara parent-record dan child-record diperlukan penghubung (link atau pointer) yang bisa satu arah atau dua-arah.


Model Data Jaringan
Dengan model jaringan ini maka informasi dimana seorang mahasiswa dapat mengambil beberapa matakuliah (pointer dari record mahasiswa tsb ke beberapa record-kuliah) dan juga informasi bahwa satu matakuliah dapat di-program-kan oleh banyak mahasiswa (pointer dari record-kuliah ke beberapa record-mahasiswa) keduanya dapat di-representasikan.
Model Jaringan dari Dosen-Matakuliah-Mahasiswa dapat digambarkan sebagai berikut.


Diagram Model Data Jaringan Dosen-MataKuliah-Mahasiswa

Persoalan yang timbul adalah “terjadinya hutan pointer” akibat relasi antar record yang rumit sehingga penelusuran data menjadi sangat sulit. Ketika model relasional menjadi lebih populer maka model inipun ditinggalkan orang.

3. Model Data Relasional
Model data relasional adalah model data yang diciptakan berdasarkan teori-relasional seperti relational algebra, dan relational calculus. Salah seorang pencetus awal dari basis data relasional adalah E.F.Codd yang juga telah menciptakan serangkaian operasi matematika relasional terhadap model data relasional.
Pada prinsipnya model data relasional dapat di-representasikan dalam bentuk table (tabel) data, dimana:
• satu tabel mewakili satu “domain” data atau entity, bila direkam merupakan satu file yang hanya memiliki satu tipe record saja, setiap record adalah baris
• setiap record terdiri atas beberapa field (atribut) atau tuple, atau kolom
• jumlah tuple / field pada setiap record sama
• setiap record memiliki atribut kunci utama (primary key) yang unik dan dapat dipakai untuk mengenali satu record
• record dapat diurutkan menurut kunci utama,

Contoh: domain mahasiswa dapat diwakili oleh satu tabel mahasiswa dengan kunci utama adalah NIM (Nomor Induk Mahasiswa), dan domain matakuliah dapat diwakili oleh satu tabel kuliah dengan kunci utama kode-mkuliah.


tabel mahasiswa
Nim Nama_mhs Alamat_mhs Tgl_lahir
011234 Ahmad Jl. Melati 50 21-3-1980
011345 Bobby Jl. Mawar 103 13-5-1980
011456 Charles Jl. Mangga 145 17-8-1980

tabel kuliah
Kode_mkuliah Nama_Mkuliah sks Semester
315KP2 Pemrograman Visual 2 5
317KP2 Pemrograman Web 2 5
319MP2 Analisis Numerik 2 5





Hubungan antara kedua domain ini dinyatakan dalam bentuk relasi, ada tiga kemungkinan relasi antar dua domain yaitu:
• relasi satu-satu (one-to-one relation) : bahwa satu mahasiswa hanya boleh mengambil satu matakuliah, dan satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1-to-1. Dalam implementasi dua file yang memiliki relasi 1-to-1 dapat digabung menjadi satu file.
• relasi satu-banyak (one-to-many relation) : bahwa satu mahasiswa boleh ambil banyak matakuliah tetapi satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1-to-M atau M-to-1. Pada relasi 1-to-M atau M-to-1, kunci record dari file pada sisi-1 harus ditambahkan sebagai kunci-tamu pada file sisi-M
• relasi banyak-banyak (many-to-many relation) : bahwa satu mahasiswa boleh ambil banyak matakuliah, dan satu matakuliah boleh diambil oleh banyak mahasiswa, relasi disingkat dengan simbol M-to-M. Pada relasi M-to-M harus diciptakan sebuah file ‘relasi’ yang berisi minimal dua field kunci record dari masing-masing file yang berelasi.
Contoh relasi antara domain mahasiswa dan matakuliah secara logis hanya bisa diterima pada jenis relasi banyak-banyak (M-to-M). Perwujudan dari relasi banyak-banyak ini diwakili oleh tabel relasi yang minimal memuat kunci utama masing-masing domain yang berelasi.

Nim Kode_kuliah Nilai
011234 315KP2 A
011234 319MP2 B
011345 315KP2 C
011345 317KP2 A
011345 319MP2 C
011456 317KP2 D
011456 319MP2 B









4. Model Relasi-Entitas
Model Relasi-Entitas atau (Entity Relationship Model) pada hakekatnya perwujudan dari model relasional dalam bentuk diagram, yaitu E-R Diagram. Domain data disebut juga sebagai himpunan entitas, diwakili oleh diagram kotak. Field-data atau atribut diwakili oleh diagram lingkaran atau ellips. Hubungan atau relasi antar domain diwakili oleh jajaran-genjang.


Simbol Relasi Entitas

Contoh relasi antara domain mahasiswa dan domain matakuliah diwujudkan dalam diagram E-R sebagai berikut:


Diagram E-R Mahasiswa-Matakuliah




5. Model Data Berbasis Objek
Model data berbasis objek dikembangkan searah dengan perkembangan pemrograman berbasis objek. Salah satu karakteristik dari sistem berbasis objek adalah encapsulation yaitu suatu objek terpisah dari objek lain sehingga setiap objek seakan-akan berada dalam kapsulnya masing-masing. Pada setiap kapsul terdapat komponen data (attribute) dikemas bersama dengan komponen akses-nya (methods). Sebagai contoh, berikut ini disajikan data pegawai dalam format berbasis objek.


Model Objek Data Pegawai

Lanjutkan......