Implementasi MySQL Tomy Satria Alasi
[email protected] http://tomysatriaalasi.blogspot.com
Lisensi Dokumen:
Copyright © 2003-2017 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
Basidata adalah sekumpulan informasi yang sanga komplek yang berguna untuk mengatur semua data yang ada didalamnya sehingga dapat diakses oleh pengguna dengan mudah dan cepat. Hal lain yang perlu diketahui bahwa didalam basis data terdapat suatu kelompok ruang penyimpanan data yang disebut tabel. Di Dalamnya terdapat data yang sangat kompleks dan terhubung satu sama lain hubungan tersebut bisa disebut elasional. Media penyimpanan data dengan database tentunya juga membutuhkan sebuah sistem. Bisa dikatakan bahwa database yang melakukan pendokumentasian juga dihasilkan dari sebuah sistem atau program. Database adalah sebuah bentuk media yang diguanakan untk menyimpan sebuah data. Setelah database adalah tabel, serint disebut dengan entitas atau entity merupakan sub dari database guna pengelompokan data yang biasa dilihat seperti kolom.
Pendahuluan
Sebagai conntoh, apabila anda ingin membangun sebuah E-Commerce maka database yang diciptakan adalah Ecommerce. Tabel yang ada kemungkinan tabel Customer, Barang dan Pemesanan, Didalam tabel terdapat field/kolom yang dibuat saat pembuatan tabel ketiga komponen diatas menjadi dasar utama sebau basisdata. Didalam field tabel terdapat kunci primer atau primary key merupakan bentuk kolom atau field utama yang mewakili kolom lainya dalam sebuah tabel untuk menghindari pendobelan data atau data yang kembar, selain primary key ada juga foregh key atau kunci tamu yang berasa dari tabel lain yakni yang merelasikan dengan tabel lain.
Isi BAB I SISTEM BASIS DATA Data adalah rekaman mengenai fenomena/fakta yang ada atau yang terajadi. Data pada pokoknya adalah refleksi fakta yang ada. Data mengenai fakta-fakta penting
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
1
organisasi harus direkam dan dikelola secara baik sehingga dapat dipakai/diakses secara efifien sehinggga efektif mendukung operasi dan pengendalian organisasi. Data merupakan sumber daya penting pada manajemen modern. Untuk itu, organisasi perlu melakukan penataaan dan manajemen data yang baik agar data yang dimiliki organisasi dapat berdaya guna secara maksismal. Sistem aplikasi berbasis file adalah kumpulan program aplikasi memberi layanan-layanan kepemakai dimana masing-masing program mendifinisikan dan mengelola datanya sendiri sehingga data yang dimiki perusaahan berupa seling keterkaitan. Dengan keterbatasan : Kendali Buruk, Isolasi data, Duplikasi data, Ketergantungan pada data, format file yang tidak kompotibel, Queri dan pemakai dari program aplikasi, perogram yang handal. Basisdata adalah kumpulan data yang secara logik berkaitan dalam merepresentasikan fenomena secara struktur dalam domain tertentu untuk mendukung aplikasi pada sistem tertentu dengan pengarang lunak untuk mendifinisikan, menciptakan, mengelola dan mengendalikan akses data dengan tujuan menyediakan lingkungan nyaman dan efisien dan penyimpanan dan pengambilan dari basis data sehingga dapat melihat, menambah, mengubah dan menghapus data berdasarkan hak akses yang biasa dikenal dengan CRUD ( Create Read Update Delete). Keunggulan Database Manajemen System (DBMS) adalah : pengendalian, konsistensi, informasi lebih banyak, multiuser, keamanan, pemeliharaan dan lain-lain. Kelemahan DBMS adalah validasi data, perawatan, biaya, human, kegagalan bila tidak kompleks. Perkembangan DBMS telah menjurus pada beberapa perhatian yakni digunakan berbasis model data relasi dan dapat diakses melalui SQL yang relatif sederhana, berisi objek-objek multi media (gambar, suara, vidio), dapat online 24 jam, konkuren transaksi, komputasi aritmatika, orang awam sampai mahir mudah dipahami dan lain-lain. Komponen dan struktur DBMS dibagi dengan masing-masing modul mempunyai peran
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
2
atau tanggung jawab yaitu.
Gambar Komponen dan struktur DBMS
Komponen : Berkas, Basisdata, Query, DML, DDL. Struktuk secara fisik meliputi : Data dictinary, berkas data. Terdapat beragam DBMS terpadu untuk aplikasi skala kecil, misalnya Microsoft Acces. Untuk besar seperti Microsft SQL Server, Oracle, SyBase, Borland interbase Server. DBMS Open Source seperti MySQL dan progreSQL. Oracle Corporation adalah salah satu perusahaan utama pengembang sistem manajemen basis data, perangkat lunak untuk mengembangkan basis data. KENAPA MEMPELAJARI DATABASE II ? SEBUTKAN JENIS SISTEM YANG MANUAL DISEKITAR ( RUMAH / KOST ) ANDA DAN APAKAH BISA DIKEMBANGKANKAN ?
BAB II SQL DAN MYSQL MySQL adalah sebuah program database server yang mampu menerima dan mengirim data dengan cepat, multi user serta mengunakan perinta SQL ( Strutured Query Language). MySQL merupakan sebuah database server yang free, artinya kita
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
3
bebas menggunakan database ini untuk keperluan pribadi atau usaha tanpa haru membeli atau membayar lisensinya. Kebinginguan dengan dua istilah yang dijumpai SQL dan MySQL yaitu SQL adalah sebuah bahasa permintaan database yang tersturktur dibuat sebagai bahasa merelasikan beberapa tabel dalam database maupun merelasikan antar database ditulis langusung sesuai permintaan yang diinginkan. MySQL adalah sebuah program database server yang memerlukan sebuah bahasa permintaan dalam melayani permintaan user sehingga SQL merupakan bahasa permintaan yang digunakan didalam MySQL. Berikut Gambaran Server MySQL dengan aplikasi server Side dan SSH.
Gambar Server MySQL
BAB III INSTALASI Dan Jalankan PAKET MySQL Komputer minimal menggunakan Windows 95,
Instal seperti umum dalam
tahap kuliah ini mengunakan aplikasi phptriad2-2-1, kemudian sudah menginstal driver
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
4
TCP/IP untuk server atau client sekalipun dalam belajar dapat menggunakan komputer sendiri.
Gambar Konfigurasi TCP/IP Dalam konsep sama seperti sharing data ( file, printer, speaker) didalam jaringan komputer. Instalasi lebih mudah yakni I Agree
double click phptriad software Kemudian pilih
dan tunggu hingga selesai sampai disini MySQL sudah terintal dengan baik,
anda sudah siap belajar database server.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
5
Gambar Instalasi MySQL Ada beberapa aplikasi untuk MySQL namun pada berelajar ini menggunakan phptriad, ada aplikasi lain sepert Xampp tidak masalah dalam hal tersebut karna memiliki fungsi yang sama sehingga tidak ada permasalah jika mengunakan aplikasi mana saja sekalipun diterapkan langsung didalam aplikasi, hanya saja file yang berbeda pada database sehingga ada kesalahan yakni pembaruan dari database itu sendiri. Sedikit
perbedaan
yakni
saat
menjalankan
program
itupun
tidak
terlalu
dipermasalahkan. Untuk menjalakan pasilitas php sudah cukup lengkap untuk php triad sehingga pada ahir bab kami akan memberikan arahan koneksi melalui script PHP dan VB sehingga tidak ada bayangan bagai
mahasiswa dalam mengembangkan
matakuliah yang diberikan. Menjalan cukup menekan simbol start pada windows kemudian memilih “MySQL D” atau “MySQL Nt” kemudian jika meng aktivkan server dapt di remote dengan browser pilih “Start Apache” hal itu juga untuk aktivkan php local host.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
6
BAB IV FUNGSI-FUNGSI MySQL Setelah database diinstal dan dijalankan kemudian
untuk masuk kedalam
database dengan menggunakan perintah :
Gambar MySQL Aktiv Pada gambar diatas database MySQL server sudah aktive untuk keluar dari aplikasi dengan menambah “\q” atau “quit”.
Gambar MySQL Keluar Bantuan MySQL dengan “¥h” or “¥?” untuk membantu pengguna baru maupun yang telah lama memakai MySQL, database ini menyediakan beberapa fasilitas bantuan berguna untuk mendokumentasikan atau memanipulasi sever. Seperti tampilan berikut :
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
7
Masih banyak lagi untuk pendukung kompenen didalam mysql berikut komponen yang berhubungan dengan sistem database MySQL itu sendiri. ; \h \? \c \r \g \r \p \. \s \u
Menutup query Bantuan Bantuan Clear Reconnection Tampilkan data Dokumentasi dokumen Pring eksekusi query status server masuk database
Dan berikut permintaaan yang berkenaan dengan server : Mengetahui versi sever MySQL
Gambar Versi MySQL
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
8
Melihat tanggal, Bulan dan Tahun yang sedang berjalan saat ini :
Gambar Tanggal MySQL Selain MySQL juga dapat menampilkan tanggal, juga dapat menampilkan waktu(jam) saat ini pada komputer. Keteikan perinta select Now(); seperti berikut :
Gambar Jam MySQL Mengetahui user aktiv, yakni melihat user yang ada didalam server MySQL :
Gambar User Aktiv MySQL Selain dengan funsgi diatas MySQL juga dapa memerlukan beberapa perhitungan matematika seperti penjumlahan, perkalian, pengulanan dan lain-lain. Hal ini sama seperti perhitungan sederhana saat anda menggunakan kalkulator sehingga fungsi ini sangat penting untuk pembelajaran lebih lanjut misalkan saja menjari keuntungan, kerugian, uang masuk, uang keluar didalam sebuah penjualan.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
9
Gambar Penjumlahan Dengan MySQL Selain penjumlahan mysql juga dapat melakukan perhitungan sinu, Cosinus, Tangen, arc sinus, ars cosinus, ars tangen.
Gambar SinCos Dengan MySQL
Selain itu banyak lagi seperti fungsI GREATEST, LEAST ( mencari nilai terkecil),
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
10
RADIANS ( nilai rata), fungsi RAND ( nilai random), ABS ( menghasilkan nilai positive) fungsi ROUND ( mencari bilangan bulat dari sebuah pecahan), MOD( sisa ahir hasil bagi), EXP ( nilai exponesial), POW ( Pemangkatan), FLOOR( bilangan bulat dari sebuah pecahan), Ceil ( Pecahan dan Asli).
Gambar Least dengan MySQL Selain untun penyimpanan ternyata mysql banyak mendukung fungsi aritmatika dan lain-lain sehingga ini lebih menarik lagi lebih didalami. Kemudiah cari fungsi encrypt carilah hasil encrypt “STIKOM Medan” jika dienkrip dengan MD5. Misal :
BAB V PERANCANGAN DATABASE
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
11
Basidata adalah sekumpulan informasi yang sanga komplek yang berguna untuk mengatur semua data yang ada didalamnya sehingga dapat diakses oleh pengguna dengan mudah dan cepat.
Gambar Akses Database Hal lain yang perlu diketahui bahwa didalam basis data terdapat suatu kelompok ruang penyimpanan data yang disebut tabel. Di Dalamnya terdapat data yang sangat kompleks dan terhubung satu sama lain hubungan tersebut bisa disebut elasional. Media penyimpanan data dengan database tentunya juga membutuhkan sebuah sistem. Bisa dikatakan bahwa database yang melakukan pendokumentasian juga dihasilkan dari sebuah sistem atau program. Database adalah sebuah bentuk media yang diguanakan untk menyimpan sebuah data. Setelah database adalah tabel, serint disebut dengan entitas atau entity merupakan sub dari database guna pengelompokan data yang biasa dilihat seperti kolom. Sebagai conntoh, apabila anda ingin membangun sebuah E-Commerce maka database yang diciptakan adalah Ecommerce. Tabel yang ada kemungkinan tabel Customer, Barang dan Pemesanan, Didalam tabel terdapat field/kolom yang dibuat saat pembuatan tabel ketiga komponen diatas menjadi dasar utama sebau basisdata. Didalam field tabel
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
12
terdapat kunci primer atau primary key merupakan bentuk kolom atau field utama yang mewakili kolom lainya dalam sebuah tabel untuk menghindari pendobelan data atau data yang kembar, selain primary key ada juga foregh key atau kunci tamu yang berasa dari tabel lain yakni yang merelasikan dengan tabel lain.
Gambar Akses Database Pada gambar diatas mengguanak tiga buah tabel bernama mahasiwa, dosen dan krs, sehingga mahasiswa dan dosen berjumpa di tabel krs dengan membawa matakuliah. Garis diatas merupakan relasional hubungan antara dua tabel atau lebih. relasi memiliki macam macam bentuk yaitu one to one, one to many, many to many. Dimana semua tabel saling terkait. Hal yang menyulitkan pada kasus ini adalah field atau kolom yang disesuaikan dengan jumlah mahasiswa, sehingga apabila sebuah instansi memiliki 100 mahasiswa dibutuhkan minimalh 103 kolom, yang dilakukan berulan-rulang sehingga harus ada multi user yang mamasukan data tersebut.
BAB VI MENCIPTAKAN DATABASE DAN TABEL Menciptakan database dengan mengaktivkan MySQL server, kemudian masuk, dan menciptakan database dengan menulis : CREATE DATABASE NAMADATABASE;
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
13
Gambar Membuat Database Kemudian membuat tabel dengan menambahkan kode berikut :
Gambar Membuat Tabel Struktur tabel dapat dilihat dengan : CREATE TABLE NAMATABEL(NAMA_KOLOM TYPE_DATA(PANJANG_NILAI)); Silahkan tambahkan tabel penjual, tabel pembeli, tabel penjualan, tabel pembelian, dan tabel tabel jenis. Setiap table memilki fungsi masing-masing dalam penyimpanan data. Untuk lebih jelasnya lihat gambar untuk pembuatan tabel dari masing-masing diatas:
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
14
Gambar Buat Tabel Jika anda perhatikan pada pembuatan tabel pembeli ada kesalahan field yaitu saat jenis kelamin, untuk mengubah hal tersebut dengan menambahkan tabel :
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
15
Gambar Merubah Field Selanjutnya untuk melihat properties tabel dan melihat tabel yang ada dengan mengetik seperti berikut :
Gambar melihat tabel tabel
Gambar melihat Deskripsi Tabel barang Sampai disini pembuatan tabel dan sudah selesai dengan baik.
kita dapat
mengubah kolom pada tabel yang telah kita buat menjadi kunci primer. Proses biasa dilakukan bila suatu saat seorang administrator dalam database menginginkan bentuk kunci yang lain, pada prosesnya sangat mudah dilakukan, yaitu dengan menghapus kolom yang sebelumnyan menjadi kunci primer dan kemudian menambahkan primery yang baru dengan menambahakan syntax : ALTER TABEL NAMA_TABEL DROP PRIMARY KEY; ALTER TABEL NAMA_TABEL ADD PRIMARY KEY(NAMA_KOLOM); Selain diatas kita dapat mebuat validasi record atau data dengan menambahkan Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
16
type enum.
Gambar validasi data Sehingga saat dimasukan data pada kolom jenis_kelamin hanya boleh diisi dengan “P” atau “W”. Seperti berikut :
Pada gambar record kedua tidak terinput karna validasi hanya boleh P dan W, dimana P berarti Prian dan W berarti Wanita. Untuk mengubahnya tambahkan sintak berikut :
Kemudian pada tabel penjualan dan pembelian tambahkan tanggal pada setiah ahir kolom yakni dengan sintax : “alter table pembelian add tanggal date;”, “alter table penjualan add tanggal date;” BAB VI MANIPULASI DATA PADA TABEL Silahkan isi data pada masing-masing database seperti berikut:
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
17
insert into jenis values('J001','Perkantoran',Null); insert into jenis values('J002','Minuman','Minuman Segar');
insert into penjual values('PJ001','Rudi','Jl. 09','0877665521','P'); insert into penjual values ('PJ002','Wani','Jl. Mana','0832993322','W');
insert into pembelian values ('PU001','B001',100,2000,'PJ001','2016-12-10'); insert into pembelian values ('PU002','B002',100,1000,'PJ002','2016-12-10');
insert into barang values('B001','Pulpen',0,3000,'J001',null); insert into barang values('B002','Aqua',0,2500,'J002',null);
update barang set jumlah= jumlah +100 where kode='B002'; update barang set jumlah= jumlah +100 where kode='B001';
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
18
insert into Pembeli values('PE001','Anto','Jl. Salah','0877665521','P'); insert into Pembeli values ('PE002','Ayu','Jl. Kembali','0832993322','W');
insert into Penjualan values ('PU001','B001',100,'PE001','2016-12-22'); insert into Penjualan values ('PU002','B002',100,'PE002','2016-12-14');
update barang set jumlah=jumlah-100 where kode='B002'; update barang set jumlah=jumlah-100 where kode='B001';
Sampai disini anda sudah melakukan transaksi dengan database MySQL yaitu untuk penjualan, silahkan siapkan pertanyaan 10 pertanyaan satu orang kemudian nanti dibahas dipertemuan dikelas, cari bagaimana menghapus record pada database berdasarkan primary, dan cari bagaimana keuntungan dan berapa barang yang tinggal, serta seleksi penjualan berdasarkan tahun , bulan dan hari.
BAB VI RELASI ANTAR TABEL Sebelum anda memamahami relasi anda sudah benar-benar dapat memahami komsep database sehingga semua data saling berhubungan pada tabel diatas berikut jelas yang di rencanakan.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
19
Untuk lebih jelas lagi lihat gambar berikut :
Sehingga semua data saling terkait, inilah yang dimaksud dengan relasi tersebut bagaimana pun sistem yang dibangun pastikan semua data saling terhubung sehingga kekompleksan data telah terencana dari awal, semakin besar sistem semakin luas relasi samakin lengkap untuk diesksekusi. Selanjutnya coba ketikan berikut agar relasi lebih anda pahami lagi. select penjualan.kode as NoFaktur, barang.nama as Barang, barang.harga as HargaJual, jenis.nama as Jenis, penjualan.jumlah as JumlahJual, penjualan.jumlah*barang.harga as Bayar, pembeli.nama as Pembeli, pembeli.alamat as Alamat, pembeli.nohp as NoHP, penjualan.tanggal from penjualan, barang, jenis, pembeli where penjualan.barang=barang.kode and barang.jenis=jenis.kode and penjualan.pembeli=pembeli.kode
Sehingga menghasilkan :
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
20
Berikut menghasilkan uang Masuk untuk pembelian barang pada toko dari tabel diatas : select
sum(penjualan.jumlah*barang.harga)
as
TotalBayar
from
penjualan,barang where penjualan.barang=barang.kode
Menghasilkan uang masuk, nah bagaimana mencari keuntungan berdarasarkan harga beli yakni dengan logika uang masuk penjualan dikurang uang keluar pembelian. select
sum(penjualan.jumlah*barang.harga)
sum(pembelian.jumlah*pembelian.harga) penjualan,barang,pembelian
where
as
Keuntungan
penjualan.barang=barang.kode
from and
pembelian.barang=barang.kode
Maka keuntungan dari usaha yang didapat adalah sebesar RP. 250.000,00.
BAB VII SELEKSI DATA Ada beberapa bentuk sintax sql yang didukangMySQL, di antarany adalah where, group by, like, with. Akan tetapi sebaiknya anda sudah mencoba sintax sebelumnya kita akan langsung mengulas dari materi yang ada. 1. Select *from nama_tabel where operator Kondisi.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
21
Operator = !=, <> > < <= >=
2. Select
*from
Kondisi Sama Dengan Tidak Sama Dengan Lebih dari Kurang dari Lebih besar sama dengan kurang dari sam dengan
nama_table
where
(pembanding
xor
pembanding); Select jabatan from karyawan where ( jabatan=’ketua’ and (not ( jeniskelamin=’p’))) or ((not ( jabatan=’wakil’)) and
jeniskelamin=’p’);
3. Select ifnull (null,keterangan) *from pegawai; 4. Select
nama,
if
(jeniskelamin=’p’,’laki-laki’)
from
pegawai; 5. Select nama, case jeniskelamin when ‘p’ then ‘Pria’ End Kayarwan from pegawai; 6. Select nama, case jeniskelamin when ‘p’ then ‘pria’ else jeniskelamin end karyawan from pegawai; 7. Select nama from pegawai except select nama from unit kerja; //menghasilkan pegawai yang tidak bekarja 8. Select nama from pegawai intersect select nama from unit kerja; //menghasilkan pegawai yang bekarja dan tidak bekerja 9. Select *from table where like (‘kondisi’); 10. Select *from table where field (‘kondisi’); 11. Select *from tabel where field lik (‘%kondisi%’);
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
22
12. Select *from tabel where field lik (‘%kondisi%’); 13. Select *from tabel where field lik (‘%kondisi%’); 14. Select *from tabel where limt batasan; 15. Select
*from
tabel
where
limit
batasandari,batasansampai; Record ke, sampai record ke 16. Select *from tabel ordey by kolom type; 17. Select *from tabel order by field asc; 18. Select *from tabel order by field desc; 19. Select *from tabel order by 2 desc; 20. Select *from tabel group by field; 21. Select nama, count(pembeli) from penjualan group by nama; 22. Select
nama,
sum(bayar)
from
penjualan
gropu
by
pembeli.nama; Silahkan coba satu-satu diatas, jika ada pertanyaan kirim ke email yang sudah disediakan diatas.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
23
VIII Seleksi Beberapa Tabel 1. select mahasiswa.nama, krs.mahasiswa from mahasiswa,krs; 2. select mahasiswa.nama, krs.mahasiswa from mahasiswa,krs where mahasiswa.npm=krs.mahasiswa and krs.semester='7'; 3. select mahasiswa.nama, krs.mahasiswa from mahasiswa,krs where mahasiswa.npm=krs.mahasiswa and (krs.semester'7' or krs.semester='5'); 4. select mahasiswa.nama, krs.mahasiswa from mahasiswa,krs where mahasiswa.npm=krs.mahasiswa and (krs.dosen=dosen.nidn); 5. select *from pelajaran,jadwal; // mencari relasi 6. select *from pelajaran cross join jadwal;
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
24
7. select *from pelajaran,jadwal where pelajaran.kode=jadwal.pelajaran; 8. select *from pelajaran straight join jadwal;// no kondisi 9. select *from pelajaran cross join jadwal; 10. select *from pelajaran inner join jadwal on pelajaran.kode=jadwal.pelajaran;//secara lengkap 11. select *from jadwal rightjoin pelajaran on kode.pelajaran=jadwal.pelajaran; kanan pelajaran 12. select *from jadwal right outer join pelajaran on pelajaran.kode=jadwal.pelajaran; 13. select *from jadwal left join jadwal on pelajaran.kode=jadwal.pelajaran; 14. select *from pelajaran left outer join jadwal on pelajaran.kode=jadwal.pelajaran;//kiri 15. select *from pelajaran inner join jadwal on pelajaran.kode=jadwal.pelajaran; 16. select *from pelajaran natural left join jadwal; //singkat no kondisi left join// 17. select mhs.nama, mk.nama, case when khs.nilai >= 80 then ‘a’ when khs.nilai >= 65 then ‘b’ when khs.nilai > 50 then ‘C’
else ‘anda tidak lulus’ end as nilai Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
25
from mhs,mk,khs where (mhs.npm=khs.npm and mk.kode=krs.kode) and khs.dosen=donesn.nidn group by dosen.nidn;
Sampai tahap ini anda sudah mahir menggunakan MySQL, materi ini dibuat sesederhana mungkin agar anda tidak berhenti bertanya kepada mereka yang selalu ingin berbagi.
IX Koneksi Database dengan PHPMyAdmin
Untuk menggunakan php myadmin, ada cukup menjalan start apache, kemudian panggil ip pada web broser : IP/phpmyadmin. Setelah indikator menjadi warna hijau pada background kedua modul tersebut, buka web browser dan ketik alamat: localhost pada address bar dan tekan Enter. Jika tidak ada masalah, di dalam web browser akan tampil jendela home dari XAMPP. Selanjutnya, kita akan membuat database yang akan digunakan. Setelah memberi nama database, kolom isian selanjutnya adalah “Collation”. Collation adalah tatacara atau aturan penyusunan huruf, angka dan karakter dalam tabel database. Anda bisa membiarkan pilihan ‘default’ yang ada: Collation, atau memilih utf8_general_ci.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
26
X ODBC Open Database Connectivity (disingkat menjadi ODBC) adalah sebuah standar terbuka untuk konektivitas antar mesin basis data. Standar ini menyediakan API yang dapat digunakan untuk menjalankan dan mengoneksikan sebuah aplikasi dengan sebuah sistem manajemen basis data (SMBD). Para desainer ODBC membuatnya dengan tujuan agar ODBC terbebas dari penggunaan bahasa pemrograman tertentu, sistem manajemen basis data tertentu, dan sistem operasi tertentu. Spesifikasi ODBC menawarkan API prosedural untuk menggunakan query dengan bahasa SQL untuk mengakses sebuah basis data. Sebuah implementasi ODBC, akan menyediakan satu aplikasi atau lebih, pustaka inti ODBC, dan juga "driver basis data". Pustaka inti ODBC, yang bersifat independen terhadap aplikasi dan juga DBMS, bertindak sebagai
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
27
interpreter antara aplikasi dan juga driver basis data, sementara driver basis data mengandung detail-detail mengenai SMBD tertentu.
XI Koneksi Dabatabase MySQL dengan
PHP
Pastikan anda sudah membuat database seperti pada database penjualan dan tabel barang , seperti gambar berikut :
Kemudian tambahkan Kode : ====================koneksi.php====================================
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
28
$password_db=""; $nama_db="penjualan"; //koneksi database $koneksi=mysql_connect($nama_host,$user_db,$password_db); //bila terkoneksi if($koneksi){ //pilih database mysql_select_db($nama_db); }else{ echo "Database tidak terkoneksi"; } ?> ======================== index.php===========================
CRUD Dengan PHP <style type="text/css"> .labelfrm{ display:block; font-size:small; margin-top:5px; } .error{ font-size:small; color:red; }
===================input.php================================== =======================data.php==================================
Tambah Data =====================delete.php=================================== <script language="javascript">document.location.href="data.php"; ===========================update.php=========================== ?php include "koneksi.php"; $kode=$_GET['kode']; $query=mysql_query("select * from barang where kode='$kode'"); ?>
echo
echo
============================simpan.php===========================
31
if($query){ header ('location:data.php'); ?> php }else{ echo "Gagal update data"; echo mysql_error(); } ?>
Simpan didalam folder : “C:¥apache¥htdocs¥penjualan” sehingga tampilan seperti berikut :
Tampilan di web browser
dan masukkan url : localhost/penjualan/index.php
Setelah anda berhasil koneksi dengan php selanjutnya dilakukan dengan koneksi melalui VB.net
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
32
XII Koneksi Dabatabase MySQL dengan
VB.Net
Program sederhana untuk input, edit dan hapus database sql menggunakan Visual Basic 2008. Program ini cocok untuk anda yang ingin belajar pemograman database, karena menggunakan koding yang sederhana dan jelas. Program ini serius menggunakan coding super sederhana, gak ribet dan ruwet jadi anda pasti faham deh, langsung ngerti. Program ini hanya menggunakan 6 field yang sangat mudah untuk difahami. bertipe string, int program ini menggunakan database mysql yang sangat populer. kemudian menggunakan modul untuk koneksi database serta fungsi untuk simpan, edit dan sebagainya sesuai dengan database dan tabel diatas. Buat project baru, dan beri nama penjualan.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
33
Sehingga perancangan sebagai berikut :
Jangan lupa tambahkan MySQL Conector, kemudan masukan koding sebagai berikut : Imports MySql.Data.MySqlClient Public Class frmBarang Dim DB As New MySql.Data.MySqlClient.MySqlConnection Dim sql As String Dim cmd As MySqlCommand Dim rs As MySqlDataReader Sub openDB() sql = "server=localhost;uid=root;pwd=;database=penjualan" Try DB.ConnectionString = sql DB.Open() Catch ex As Exception MsgBox(ex.Message) End Try End Sub Sub ubahTombol(ByVal Btn1 As Boolean, ByVal Btn2 As Boolean, ByVal Btn3 As Boolean, ByVal Btn4 As Boolean, ByVal Btn5 As Boolean, ByVal Btn6 As Boolean) Baru.Enabled = Btn1 Simpan.Enabled = Btn2 Edit.Enabled = Btn3 Hapus.Enabled = Btn4 Batal.Enabled = Btn5 Keluar.Enabled = Btn6 End Sub Sub bersih() txtKode.Text = "" txtNama.Text = "" Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
34
txtJumlah.Text = "" txtHarga.Text = "" txtJenis.Text = "" txtKeterangan.Text = "" txtKode.Enabled = True ubahTombol(True, False, False, False, False, True) End Sub Sub BuatTabel() LV.Columns.Add("Kode", 100, HorizontalAlignment.Center) LV.Columns.Add("Nama", 100, HorizontalAlignment.Center) LV.Columns.Add("Jumlah", 90, HorizontalAlignment.Center) LV.Columns.Add("Harga", 100, HorizontalAlignment.Center) LV.Columns.Add("Jenis", 90, HorizontalAlignment.Center) LV.Columns.Add("Keterangan", 100, HorizontalAlignment.Center) LV.View = View.Details LV.GridLines = True LV.FullRowSelect = True End Sub Sub isiTabel() LV.Items.Clear() sql = "select * from barang" cmd = New MySqlCommand(sql, DB) rs = cmd.ExecuteReader Try While rs.Read Dim Lst As New ListViewItem Lst.Text = rs("kode") Lst.SubItems.Add(rs("Nama")) Lst.SubItems.Add(rs("jumlah")) Lst.SubItems.Add(rs("harga")) Lst.SubItems.Add(rs("jenis")) Lst.SubItems.Add(rs("keterangan")) LV.Items.Add(Lst) End While Catch ex As Exception MsgBox(ex.Message) End Try rs.Close() End Sub Private Sub txtKode_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtKode.KeyPress Dim tombol As Integer = Asc(e.KeyChar) If tombol = 13 Then sql = "select * from barang where kode = '" & txtKode.Text & "'" cmd = New MySqlCommand(sql, DB) rs = cmd.ExecuteReader Try showDB() Catch ex As Exception Dim x As String x = txtKode.Text bersih() txtKode.Text = x ubahTombol(False, True, False, False, True, False) End Try rs.Close() txtNama.Focus() End If Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
35
End Sub Sub showDB() rs.Read() txtKode.Text = rs("kode") txtNama.Text = rs("Nama") txtJumlah.Text = rs("jumlah") txtHarga.Text = rs("harga") txtJenis.Text = rs("jenis") txtKeterangan.Text = rs("keterangan") txtKode.Enabled = False ubahTombol(False, False, True, True, True, False) End Sub Sub SimpanDB() sql = "insert into barang(kode,nama,jumlah,harga,jenis,keterangan)" & _ "values('" & txtKode.Text & _ "','" & txtNama.Text & _ "','" & txtJumlah.Text & _ "','" & txtHarga.Text & _ "','" & txtJenis.Text & _ "','" & txtKeterangan.Text & "')" Try cmd = New MySqlCommand(sql, DB) cmd.ExecuteNonQuery() bersih() isiTabel() Catch ex As Exception MsgBox(ex.Message) End Try End Sub Sub EditDB() sql = "Update barang set Nama='" & txtNama.Text & _ "',jumlah='" & txtJumlah.Text & _ "',harga='" & txtHarga.Text & _ "',jenis='" & txtJenis.Text & _ "',keterangan='" & txtKeterangan.Text & _ "' where kode = '" & txtKode.Text & "'" Try cmd = New MySqlCommand(sql, DB) cmd.ExecuteNonQuery() bersih() isiTabel() Catch ex As Exception MsgBox(ex.Message) End Try End Sub Sub HapusDB() sql = "Delete from barang where kode ='" & txtKode.Text & "'" Try cmd = New MySqlCommand(sql, DB) cmd.ExecuteNonQuery() bersih() isiTabel() Catch ex As Exception MsgBox(ex.Message) End Try End Sub
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
36
Private Sub Baru_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Baru.Click bersih() txtKode.Focus() End Sub Private Sub Simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan.Click SimpanDB() End Sub Private Sub Edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Edit.Click EditDB() End Sub Private Sub Hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus.Click HapusDB() End Sub Private Sub Batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Batal.Click bersih() txtKode.Focus() End Sub Private Sub Keluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Keluar.Click End End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load openDB() BuatTabel() isiTabel() bersih() End Sub End Class
Laporan dari Barang sebagai berikut :
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
37
Pesan : Jika anda duduk di sebuah diskusi ( tempat belajar), duduklah bersama mereka dengan adab yang sopan, dengarkan perkataan mereka bila berbicara, dan jika anda berbicara, bicaralah dengan sopan pula dengan mereka.
Penutup
Semoga bermanfaat, salah silaturahmi.. tidak ada yang lebih membahagiakan bagi kami ini
dapat membantu pembaca dalam matakuliah basisdata khususnya dapat mengerti. Tebing Tinggi, Oktober 2016
Referensi
MySQL, Visual Basic, PHP
Biografi Penulis
Tomy Satria Alasi. Menyelesaikan S1 Komputer di STMIK Budidarma dan S2 Komputer di UPI Padang, SD, SMP, SMA di Kutacane, Kabupaten, Aceh Tenggara.
Komunitas eLearning IlmuKomputer.Com Copyright © 2003-2017 IlmuKomputer.Com
38