Minggu, 07 Desember 2014

Yuk Belajar Pemrograman Visual Basic dot Net Di Mesran.Net

Selesaikan Kasus Berikut : Penjualan Kredit Mobil

Berikut Jawaban Program:

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Call buattabel()
        kode.Items.Add("MB1")
        kode.Items.Add("MB2")
        kode.Items.Add("MB3")
        kode.Items.Add("MB4")
        tahun.Items.Add("2012")
        tahun.Items.Add("2013")
        tahun.Items.Add("2014")
        tahun.Items.Add("2015")
        kondisi.Items.Add("Baru")
        kondisi.Items.Add("Bekas")
        For i = 1 To 20
            jumlah.Items.Add(i)
        Next

        For t = 12 To 48 Step 6
            lamakredit.Items.Add(t)
        Next

    End Sub

    Private Sub kode2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kode.SelectedIndexChanged
        If kode.Text = "MB1" Then
            nm.Text = "AVANZA VELOZ"
        ElseIf kode.Text = "MB2" Then
            nm.Text = "AVANZA G"
        ElseIf kode.Text = "MB3" Then
            nm.Text = "VIOZ "
        ElseIf kode.Text = "MB4" Then
            nm.Text = "YARIS"
        End If
    End Sub

    Private Sub kondisi_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kondisi.SelectedIndexChanged
        If kode.Text = "MB1" And tahun.Text = "2012" And kondisi.Text = "Baru" Then
            harga.Text = 175000000
        ElseIf kode.Text = "MB1" And tahun.Text = "2012" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB1" And tahun.Text = "2013" And kondisi.Text = "Baru" Then
            harga.Text = 195000000
        ElseIf kode.Text = "MB1" And tahun.Text = "2013" And kondisi.Text = "Bekas" Then
            harga.Text = 130000000
        ElseIf kode.Text = "MB1" And tahun.Text = "2014" And kondisi.Text = "Baru" Then
            harga.Text = 208000000
        ElseIf kode.Text = "MB1" And tahun.Text = "2014" And kondisi.Text = "Bekas" Then
            harga.Text = 170000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2012" And kondisi.Text = "Baru" Then
            harga.Text = 175000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2012" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2013" And kondisi.Text = "Baru" Then
            harga.Text = 195000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2013" And kondisi.Text = "Bekas" Then
            harga.Text = 130000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2014" And kondisi.Text = "Baru" Then
            harga.Text = 208000000
        ElseIf kode.Text = "MB2" And tahun.Text = "2014" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2012" And kondisi.Text = "Baru" Then
            harga.Text = 175000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2012" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2013" And kondisi.Text = "Baru" Then
            harga.Text = 195000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2013" And kondisi.Text = "Bekas" Then
            harga.Text = 130000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2014" And kondisi.Text = "Baru" Then
            harga.Text = 208000000
        ElseIf kode.Text = "MB3" And tahun.Text = "2014" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2012" And kondisi.Text = "Baru" Then
            harga.Text = 175000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2012" And kondisi.Text = "Bekas" Then
            harga.Text = 120000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2013" And kondisi.Text = "Baru" Then
            harga.Text = 195000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2013" And kondisi.Text = "Bekas" Then
            harga.Text = 130000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2014" And kondisi.Text = "Baru" Then
            harga.Text = 208000000
        ElseIf kode.Text = "MB4" And tahun.Text = "2014" And kondisi.Text = "Bekas" Then
            harga.Text = 170000000
        End If
    End Sub

    Private Sub jumlah_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles jumlah.SelectedIndexChanged
        totalharga.Text = Val(jumlah.Text) * Val(harga.Text)
        uangmuka.Text = Val(totalharga.Text) * 0.3
        komisisales.Text = Val(jumlah.Text) * 0.02 * Val(uangmuka.Text)
    End Sub
    Sub buattabel()
        lv.Columns.Add("Kode", 50, HorizontalAlignment.Center)
        lv.Columns.Add("Nama Mobil", 80, HorizontalAlignment.Center)
        lv.Columns.Add("Tahun", 50, HorizontalAlignment.Center)
        lv.Columns.Add("Kondisi", 50, HorizontalAlignment.Center)
        lv.Columns.Add("Harga", 80, HorizontalAlignment.Center)
        lv.Columns.Add("Jumlah", 50, HorizontalAlignment.Center)
        lv.Columns.Add("Total Harga", 100, HorizontalAlignment.Center)
        lv.Columns.Add("Uang Muka ", 100, HorizontalAlignment.Center)
        lv.Columns.Add("Komisi Sales", 100, HorizontalAlignment.Center)
        lv.Columns.Add("Lama Kredit", 100, HorizontalAlignment.Center)
        lv.Columns.Add("Total Kredit", 100, HorizontalAlignment.Center)
        lv.Columns.Add("Angsuran Per Bulan", 100, HorizontalAlignment.Center)
        lv.View = View.Details
        lv.GridLines = True
        lv.FullRowSelect = True
    End Sub
    Sub isitabel()
        Dim lst As New ListViewItem
        lst.Text = kode.Text
        lst.SubItems.Add(nm.Text)
        lst.SubItems.Add(tahun.Text)
        lst.SubItems.Add(kondisi.Text)
        lst.SubItems.Add(harga.Text)
        lst.SubItems.Add(jumlah.Text)
        lst.SubItems.Add(totalharga.Text)
        lst.SubItems.Add(uangmuka.Text)
        lst.SubItems.Add(komisisales.Text)
        lst.SubItems.Add(lamakredit.Text)
        lst.SubItems.Add(totalkredit.Text)
        lst.SubItems.Add(angsuranperbulan.Text)
        lv.Items.Add(lst)
    End Sub

    Private Sub simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles simpan.Click
        Call isitabel()
        kode.Text = ""
        nm.Text = ""
        tahun.Text = ""
        kondisi.Text = ""
        harga.Text = ""
        jumlah.Text = ""
        totalharga.Text = ""
        uangmuka.Text = ""
        komisisales.Text = ""
        lamakredit.Text = ""
        totalkredit.Text = ""
        angsuranperbulan.Text = ""
    End Sub

    Private Sub hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hapus.Click
        lv.Items.Remove(lv.SelectedItems(0))
    End Sub

    Private Sub bersih_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bersih.Click
        lv.Items.Clear()
    End Sub

    Private Sub keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles keluar.Click
        Dim tanya As String
        tanya = MsgBox("Anda Yakin Ingin Keluar", MsgBoxStyle.YesNo)
        If tanya = vbYes Then
            Me.Close()
        End If
    End Sub

    Private Sub lamakredit_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lamakredit.SelectedIndexChanged
        totalkredit.Text = Val(totalharga.Text) - Val(uangmuka.Text)
        angsuranperbulan.Text = (Val(totalkredit.Text) * Val(lamakredit.Text * 0.03)) - Val(totalkredit.Text) / Val(lamakredit.Text)
    End Sub
End Class


Tampilan Hasil :



Demikianlah Postingan Saya

Nama : Hendra Syahputra
NPM : 13110660

Selamat Belajar Pemroggraman VB NET

Rabu, 03 Desember 2014

Pembahasan MySQL

MySQL

Saat aplikasi yang dibuat membutuhkan informasi yang cukup banyak dan kompleks, maka perlu adanya suatu tempat untuk menyimpan berbagai informasi atau data yang dibutuhkan dengan terstruktur yang sering disebut dengan database. Penggunaan databasedimaksudkan agar informasi yang ditampilkan dapat lebih fleksibel. Data terbaru dapat diakses oleh pengunjung dan terdokumentasi dengan baik. MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagaiperangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL. Bahasa pemrograman Mysql terdapat beberapa API (Application Programming Interface) tersedia yang memungkinkan aplikasi-aplikasi komputer yang ditulis dalam berbagai bahasa pemrograman untuk dapat mengakses basis data MySQL antara lain: bahasa pemrograman CC++C#bahasa pemrograman Eiffelbahasa pemrograman Smalltalkbahasa pemrograman Javabahasa pemrograman LispPerlPHPbahasa pemrograman PythonRubyREALbasic dan Tcl. Sebuah antarmuka ODBC memanggil MyODBC yang memungkinkan setiap bahasa pemrograman yang mendukung ODBC untuk berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL dalam ANSI C.
MySQL memiliki beberapa keistimewaan, antara lain :
1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. Performance tuning’, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IPUnix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupunOracle
Untuk menjalankan MySQl bisa dilakukan dengan langkah sebagai berikut :
1. Aktifkan/ start MySQL
Klik start MySQL pada menu PHPTriad jika software yang anda gunakan PHPTriad. Atau pada DOS PROMPT didirectory c:/Apache/mysql/bin/ ketikkan mysqld lalu tekan enter jika Sistem Operasi anda Windows Me, 9x, Jika Sistem Operasi anda Windows anda atau XP ketikkan mysqld-nt—standalone.
2. Bukalah DOS PROMPT aktifkan direktori c:/Apache/mysql/bin/
3. Ketik mysql kemudian tekan ENTER.
MySQL sangat populer dalam aplikasi web seperti MediaWiki (perangkat lunak yang dipakai Wikipedia dan proyek-proyek sejenis) dan PHP-Nuke dan berfungsi sebagai komponen basis data dalam LAMP. Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan popularitas PHP, sehingga seringkali disebut sebagai Dynamic Duo.
MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses database yang terbagi menjadi tiga bagian, yaitu DDL, DML dan DCL. Selain itu, MySQL bersifat free (tidak perlu membayar untuk menggunakannya).

DDL
DDL (Data Definition Language) merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, tabel, atribut (kolom), batasan-batasan terhadap suatu atribut, serta hubungan antar tabel. Perintah yang termasuk dalam kelompok DDL adalah:
1. CREATE, untuk membuat tabel. Contoh: CREATE TABLE siswa (no_siswa INTEGER, nama CHAR(15));
2. ALTER, untuk mengubah struktur tabel. Contoh: ALTER TABLE siswa ADD kelamin CHAR(1);
3. DROP, untuk menghapus tabel. Contoh: DROP TABLE siswa;

DML
DML (Data Manipulation Language) adalah kelompok perintah yang berfungsi untuk memanipulasi data dalam database, misalnya untuk pengambilan, penyisipan, pengubahan, dan penghapusan data. Perintah yang masuk kategori DML adalah:
1. SELECT, untuk memilih data. Contoh: SELECT * FROM siswa;
2. INSERT, untuk menambah data. Contoh: INSERT INTO siswa VALUES (‘1’,’hakim’);
3. DELETE, untuk menghapus data. Contoh: DELETE FROM siswa WHERE nama = ‘hakim’;
4. UPDATE, untuk mengubah data. Contoh: UPDATE siswa SET nama=’hakim’ WHERE no_siswa=‘1’;

DCL
DCL (Data Control Language) berisi perintah-perintah untuk mengendailkan pengaksesan data. Pengendalian dapat dilakukan berdasarkan perpengguna, per-tabel, per-kolom maupun per-operasi yang boleh dilakukan. Perintah-perintah yang termasuk dalam DCL adalah:
1. GRANT, untuk memberikan kendali pengaksesan data. Contoh: GRANT SELECT siswa TO hakim;
2. REVOKE, untuk mencabut kemampuan pengaksesan data. Contoh: REVOKE SELECT ON siswa FROM hakim;
3. LOCK TABLE, untuk mengunci tabel. Contoh: LOCK TABLE siswa;

Minggu, 26 Oktober 2014

MODEL DATA RELASIONAL DALAM BASIS DATA





MODEL DATA RELASIONAL
 



1·         Pengertian Model Data Relasional

Model Data Relasional adalah suatu model basis data yang menggunakan tabel dua dimensi,  yang terdiri atas baris dan kolom untuk menggambarkan sebuah berkas data. 

Model ini menunjukkan cara mengelola/mengorganisasikan data secara fisik dalam memory sekunder, yang akan berdampak pula pada bagaimana kita mengelompokkan data dan membentuk keseluruhan data yang terkait dalam sistem yang kita buat.

Contoh Tabel dan keterhubungannya :

MHS
NPM
Nama
Alamat
10296832
Nurhayati
Jakarta
10296126
Astuti
Jakarta
31296500
Budi
Depok
41296525
Prananingrum
Bogor
50096487
Pipit
Bekasi
21196353
Quraish
Bogor

MKUL
KDMK
MTKULIAH
SKS
KK021
P. Basis Data
2
KD132
SIM
3
KU122
Pancasila
2

NILAI
NPM
KDMK
MID
FINAL
10296832
KK021
60
75
10296126
KD132
70
90
31296500
KK021
55
40
41296525
KU122
90
80
21196353
KU122
75
75
50095487
KD132
80
0
10296832
KD132
40
30

2·         Keuntungan Model Data Relasional

1.    Bentuknya sederhana
2.    Mudah melakukan berbagai operasi data (query, update/edit, delete).

Contoh-contoh model basis data:

1.  Model basis data hirarki
2.  Model basis data network/jaringan
3.  Model basis data relational (paling banyak digunakan)

Contoh DBMS yang mengelola basis data relational :

-       dBase III+
-       MS.Access
-       Borland-Paradox
-       Oracle
-       DB2
-       SYBASE
-       Informix.


3·         Contoh Pembuatan Tabel.

MKUL
KDMK
MTKULIAH
SKS
KK021
P. Basis Data
2
KD132
SIM
3
KU122
Pancasila
2

Karakteristik dari tabel MKUL:
-          data mata kuliah memiliki 3 buah kolom data
-          kolom 1 berisi adta string/alphanumerik dengan lebar tetap, yaitu 5 digit/char.
-          Kolom 2 berisi data string dengan lebar maksimum 30 digit.
-          Kolom 3 berisi data integer dengan lebar maksimum 1 digit.

Dari karakteristik di atas, kita bisa menetapkan struktur data tabel MKUL:
-          nama kolom/field.
-          Tipe data.
-          Lebar (banyaknya dgiti maksimum yang bisa ditampung).

Jadi, struktur tabel MKUL :

Nama Kolom
Tipe
Lebar
KDMK
Char
5
MTKULIAH
Char
30
SKS
numerik
1


·         Istilah dalam Model Data Relasional :

Relasi:
Sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris.

Atribut:
Kolom pada sebuah relasi (field).

Tupel
Baris pada sebuah relasi (record).

Domain
Kumpulan nilai yang valid untuk satu atau lebih atribut

Derajat (degree)
Jumlah atribut dalam sebuah relasi (jumlah field)

Cardinality
Jumlah tupel dalam sebuah relasi (jumlah record)


4         Relational Key

Super key

Satu atribut/kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi (satu atau lebih field yang dapat dipilih untuk membedakan antara 1 record dengan record lainnya).

Contoh: Untuk tabel MHS di atas, super key-nya:
-          NPM
-          NAMA (dengan syarat tidak ada nama yang sama)
-          ALAMAT (dengan syarat tidak ada alamat yang sama)
-          NPM + NAMA
-          NPM + ALAMAT
-          NAMA + ALAMAT
-          NPM + NAMA + ALAMAT

Candidate key

Atribut di dalam relasi yang biasanya mempunyai nilai unik  (super key dengan jumlah field yang paling sedikit)

Maka, candidate key-nya adalah NPM, NAMA dan ALAMAT (karena hanya terdiri dari 1 field saja)

Primary key

Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi

Maka, primary key yang dipilih adalah NPM (unik, tidak ada NPM yang sama).

Alternate key

Candidate key yang tidak dipilih sebagai primary key

Maka, candidate key-nya NAMA dan ALAMAT

Foreign key

Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa
 
5·         Relational Integrity Rules

1.    Null
Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut

2.    Entity Integrity
Tidak ada satu komponen primary key yang bernilai null.

3.    Referential Integrity
Suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yang bersangkutan.



6         Bahasa Pada Model data Relasional

Menggunakan bahasa query, yaitu pernyataan yang diajukan untuk mengambil informasi

Terbagi 2 :

1.   Bahasa Query Formal

Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis.
Terbagi 2, yaitu:
a. Prosedural, yaitu pemakai memberi spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya.

Contoh:    
Aljabar Relasional , yaitu dimana query diekspresikan dengan cara menerapkan operator tertentu terhadap suatu tabel / relasi.

b. Non Prosedural, yaitu pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya.

Contoh:
Kalkulus Relasional, dimana query menjelaskan set tuple yang diinginkan dengan cara menjelaskan predikat tuple yang diharapkan.

Terbagi 2 :
1.    Kalkulus Relasional Tupel
2.    Kalkulus Relasional Domain

2.   Bahasa Query Komersial

Bahasa Query yang dirancang sendiri oleh programmer   menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly).

Contoh :

         QUEL
Berbasis pada bahasa kalkulus relasional
           
·         QBE
Berbasis pada bahasa kalkulus relasional

·         SQL
Berbasis pada bahasa kalkulus relasional dan    aljabar relasional