MODUL PERKULIAHAN Aplikasi Komputer Pengenalan BasisData dan SQL Fakultas Program Studi Ekonomi & Bisnis Manajemen TatapMuka 13 Kode MK DisusunOleh 90001 Dian Wirawan, S.Kom, M.Kom Abstract Kompetensi Pendahuluan tentang perancangan basisdata dengan menggunakan Ms.Access 2010. Mahasiwa dapat mengetahui cara membuat basis data Ms. Access 2010. Pengenalan Basis Data dan SQL A. Latar belakang Basis Data 1. Data dan Informasi Menurut Turban, Aronson, and Liang (2005) data dan informasi didefinisikan sebagai berikut: Data, merupakan sesuatu yang menyangkut barang, kejadian, aktivitas, dan transaksi yang telah tercatat, diklasifikasikan, dan disimpan namun belum memiliki makna. Data dapat berupa nilai numerik, alphanumerik, gambar, dan suara. Informasi, adalah data yang telah dikelola dalam bentuk tertentu untuk memberikan makna atau arti bagi penerimanya. 2. Siklus Informasi Data dan informasi akan saling berkesinambungan sehingga membentuk suatu siklus yang disebut information cycle (siklus informasi). Data ditangkap oleh indera kemudian menjadi inputan dalam sebuah model untuk diubah menjadi informasi bagi penerimanya yang nantinya akan membantu pengambilan keputusan dan menjadi sebuah hasil tindakan. Gambar 1. Siklus informasi 2016 2 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id 3. Pentingnya data dan informasi Data dan informasi sebagai sebuah aset penting perusahaan/organisasi. Informasi yang benar dapat menjadikan suatu perusahaan/organisasi memperoleh margin untuk melakukan aksi. Data dan informasi sebagai salah satu parameter kemajuan perusahaan/organisasi (maturity level). 4. Sistem Basis Data dan Sistem File Pada sebuah institusi, data merupakan salah satu hal yang sangat penting. Setiap bagian/divisi dari institusi memiliki data sendiri-sendiri. Tapi setiap bagian pun membutuhkan sebagian data dari bagian yang lain. Hal ini yang biasa dikenal sebagai “shared data”. Setiap divisi memiliki aplikasi sendiri-sendiri dalam melakukan manipulasi dan pengambilan data tersebut. Setiap aplikasi memiliki file-file dalam sistem operasi yang digunakan untuk menyimpan data-data. Seiring dengan berkembangnya institusi, bertambahnya bagian/divisi, bertambah pula data dan aplikasi yang digunakan. Bertambahnya aplikasi, bertambah pula file-file yang dibuat. Gaya sistem pemrosesan-file tersebut menyebabkan setiap data disimpan dalam bentuk record dalam berbagai macam file, dan diperlukan aplikasi yang berbeda dalam melakukan pengambilan record dari, dan penambahan record ke dalam file. Hal ini berlaku pada masa sebelum adanya Sistem Basis Data (DBMS). Menyimpan data dalam bentuk file yang berbeda-beda, memiliki kekurangan-kekurangan: • Data redundancy dan inconsistency. Dikarenakan programer yang berbeda membuat file dan aplikasi masing-masing, menyebabkan beragam format dan aplikasi yang dibuat. Bahkan, aplikasi pun dibuat menggunakan bahasa pemrograman yang berbeda-beda. Lebih jauh lagi, data atau informasi yang sama bisa terdapat dalam beberapa file yang berbeda. Ini yang disebut dengan redundancy. Redundancy data ini lama inconsystency dari data. 2016 3 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id kelamaan akan menyebabkan • Kesulitan dalam pengaksesan data. Dikarenakan setiap aplikasi memiliki file tersendiri untuk penyimpanan dan pengambilan data, maka jika suatu bagian dari institusi membutuhkan data dari bagian lain, akan menemui kesulitan. Hal ini dikarenakan aplikasi yang dimiliki bagian tersebut, tidak dapat membaca file yang terdapat di bagian lain. • Isolasi data. Dikarenakan data tersebar dalam berbagai macam file, dan file tersebut dalam beragam format, pembuatan aplikasi baru akan terasa sulit ketika harus membaca format dari masing-masing file tersebut. • Masalah integritas. Data yang disimpan harus memenuhi hal yang dinamakan dengan consistency constraint. Jika sebuah constraint berubah, maka seluruh aplikasi yang digunakan harus mengakomodasinya. Masalah akan muncul, jika constraint melibatkan beberapa data dari file yang berbeda-beda. • Masalah keamanan. Tidak semua pengguna dari basis data dapat mengakses semua data. Hal ini akan sulit dilakukan jika menggunakan gaya penyimpanan data dalam file. Gambar 2. Perkembangan Database 2016 4 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Basis data menyediakan fasilitas atau memudahkan dalam memproduksi informasi yang digunakan oleh pemakai untuk mendukung pengambilan keputusan. Hal inilah yang menjadikan alasan dari penggunaan tehnologi basis data pada saat sekarang (dunia bisnis). Berikut ini contoh penggunaan Aplikasi database dalam dunia bisnis : Bank : Pengelolaan data nasabah, akunting, semua transaksi perbankan Bandara: Pengelolaan data reservasi, penjadualan Universitas: Pengelolaan pendaftaran, alumni Penjualan: Pengelolaan data customer, produk, penjualan Pabrik: Pengelolaan data produksi, persediaan barang, pemesanan, agen Kepegawaian: Pengelolaan data karyawan, gaji, pajak Telekomunikasi : Pengelolaan data tagihan, jumlah pulsa Sistem Pemrosesan File Program Aplikasi Untuk memasukkan data nasabah Nasabah Customer Service Program Aplikasi Untuk Mengkredit / mendebet rekening Teller Gambar 3. Sistem database untuk suatu Bank File Nasabah Nasabah (nonasabah, nama, alamat) File Rekening Rekening (nonasabah, norek, nama, alamat, saldo) 2016 5 File Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id File Rekening 5. Konsep Dasar Basis Data Data adalah Representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, mahasiswa, pembeli), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentu angka, huruf, symbol,teks, gambar, bunyi atau kombinasinya. Basis Data adalah Sekumpulan data yang terintegrasi yang diorganisasikan untuk memenuhi kebutuhan para pemakai di dalam suatu organisasi. DBMS ( Database Management System ) adalah Perangkat Lunak yang menangani semua pengaksesan ke database Sistem Basis Data terdiri dari basis data dan DBMS. Gambar 4. Konsep Basis Data 6. Istilah - Istilah Dasar Basis Data Enterprise Suatu bentuk organisasi seperti: bank, universitas, rumah sakit, pabrik, dsb. Data yang disimpan dalai basis data merupakan data operasional dari suatu enterprise. Contoh data operasional : data keuangan, data mahasiswa, data pasien Entitas Suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalai basis data. 2016 6 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Contoh Entitas dalam lingkungan bank terdiri dari : Nasabah, Simpanan, Hipotik Contoh Entitas dalam lingkungan universitas terdiri dari : Mahasiswa, mata kuliah Kumpulan dari entitas disebut Himpunan Entitas Contoh : semua nasabah, semua mahasiswa Atribut ( Elemen Data ) Karakteristik dari suatu entitas. Contoh Entitas Mahasiswa atributnya terdiri dari Npm, Nama, Alamat, Tanggal lahir. Nilai Data ( Data Value ) Isi data / informasi yang tercakup dalai setiap elemen data. Contoh : Atribut Nama Mahasiswa dapat berisi Nilai Data : Roy, Garry, Mona. Kunci Elemen Data ( Key Data Element ) Tanda pengenal yang secara unik mengidentifikasikan entitas dari suatu kumpulan entitas. Contoh Entitas Mahasiswa yang mempunyai atribut-atribut npm, nama, alamat, tanggal lahir menggunakan Kunci Elemen Data npm. Record Data Kumpulan Isi Elemen data yang saling berhubungan. Contoh : kumpulan atribut npm, nama, alamat, tanggal lahir dari Entitas Mahasiswa berisikan : "10200123", "Sulaeman", "Jl. Sirsak 28 Jakarta", "8 Maret 1983". 2016 7 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id 7. Pengguna Basis Data System Engineer Tenaga ahli yang bertanggung jawab atas pemasangan Sistem Basis Data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari sistem tersebut kepada pihak penjual Database Administrator (DBA) Tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya. Tugas DBA : • Mengontrol DBMS dan software-software • Memonitor siapa yang mengakses basis data • Mengatur pemakaian basis data • Memeriksa security, integrity, recovery dan concurency Program Utility yang digunakan oleh DBA : o Loading Routines Membangun versi utama dari database o Reorganization Routines Mengatur / mengorganisasikan kembali database o Journaling Routines Mencatat semua operasi pemakaian database o Recovery Routines Menempatkan kembali data, sebelum terjadinya kerusakan o Statistical Analysis Routines Membantu memonitor kehandalan sistem 2016 8 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Pemakai Akhir (End User) Ada beberapa jenis/tipe pemakai terhadap suatu sistem basis data yang dapat dibedakan berdasarkan cara mereka berinteraksi terhadap sistem : o Programmer aplikasi Pemakai yang berinteraksi dengan basis data melalui Data Manipulation Language (DML), yang disertakan (embedded) dalai program yang ditulis dalai bahasa pemrograman induk (seperti C, pascal, cobol, dll) o User Mahir (Casual User) Pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka menyatakan query (untuk akses data) dengan bahasa query yang telah disediakan oleh suatu DBMS. o User Umum (Global User) Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen (executable program) yang telah ditulis/disediakan sebelumnya. o User Khusus (Specialized/Sophisticated User) Pemakai yang menulis aplikasi basis data non konvensional, tetapi untuk keperluan-keperluan khusus seperti aplikasi AI, Sistem Pakar, Pengolahan Citra,dll, yang bisa saja mengakses basis data dengan/tanpa DBMS yang bersangkutan. B. Pengertian SQL SQL merupakan subbahasa pemrograman yang khusus dipergunakan untuk memanipulasi basis data. SQL adalah salah satu DBMS (database management system) yang saat ini banyak digunakan untuk operasi basis data dan embedded (ditempelkan) di hampir semua bahasa pemrograman yang mendukung basis data relasional. Perbedaan penggunaan SQL pada masing-masing bahasa biasanya pada sintaks2 khusus. Misalnya : 2016 9 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id INSERT INTO … VALUE. Pada bahasa yang lain INSERT INTO …VALUES…, dll. Bahasa yang mendukung SQL antara lain : Visual Basic, C++ Builder,Delphi, ORACLE, MySQL,PostGreeSQL,JAVA,dll. a. Kategori SQL memiliki 3 kategori perintah 1. Data Definition Language (DDL), yakni perintah2 yang digunakan untuk mendefinisikan (menciptakan, tambah/mengubah/hapus) sturktur data/tabel 2. Data manipulation language (DML), yakni perintah yang digunakan untuk memanipulasi database (melihat, menenusuri, filtering, summarize, perhitungan, dll) 3. Data Control Language (DCL, digunakan untuk mengedalikan database b. Data Definition Language (DDL) perintah-perintah dibawah ini menggunakan standar MySql, karena saat ini banyak digunakan pada berbagai aplikasi. [1] Menciptakan database CREATE DATABASE nama_database [2] Menciptakan tabel CREATE TABLE nama_tabel(nama_field1 jenis_data1(lebar1), nama_field2 jenis_data2(lebar2),………) lebar jumlah byte/karakter maksimal pd field tersebut [3] Mengubah field ALTER TABLE nama_tabel lebar ) CHANGE field1 field2 jenis_data( Field1 : field lama Field2: field Baru [4] Menambah field ALTER TABLE nama_tabel ) ADD nama_field [5] Menghapus field 2016 10 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id jenis_data( lebar ALTER TABLE nama_tabel DROP field field nama field yg dihapus. c. Data Manipulation Language Contoh : Contoh terdapat database: Mahasiswa Jurusan *Kodejur Namajur Ketua Pribadi *Nomhs Nama **Kodejur Tabel : Pribadi Tabel : jurusan Nomhs 210100 210090 Nama Rina Gunawan Gani Suprapto **Kodejur 2 1 *Kodejur 1 2 210012 210099 210002 Alexandra Nadine Rizal Samurai 2 3 1 3 NamaJur Sistem Informasi Teknik Informatika Teknik Komputer Ketua Harnaningrum,S.Si EnnySela,S.Kom.,M.Kom Berta Bednar,S.Si,M.T. a. Membaca/mengambil (dari disk/storage ke memori) isi tabel [1] Semua record semua field SELECT * FROM tabel Contoh: SELECT * FROM Pribadi Hasil : Nomhs 210100 210090 210012 210099 210002 2016 11 Nama Rina Gunawan Gani Suprapto Alexandra Nadine Rizal Samurai Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom Kodejur 2 1 2 3 1 PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id [2] Semua record, field tertentu SELECT field1, field2,… FROM tabel Contoh : SELECT nomhs,nama FROM Pribadi Hasil : Nomhs 210100 210090 210012 210099 210002 Nama Rina Gunawan Gani Suprapto Alexandra Nadine Rizal Samurai [3] Menyaring data (filtering) Agar data yang diambil sesuai dengan kebutuhan (pada contoh diambil semua field) Dengan 1 kriteria/kondisi SELECT * FROM tabel WHERE kondisi Catatan : Kondisi = field [ =,>,<,>=,<=,!=] kunci [ ] = pilih salah satu dari operator relasi Field : nama field dimana data disaring Kunci : nilai/data sebagai kunci penyaringan Contoh : SELECT * FROM Pribadi WHERE nama=”Nadine” Hasil : Nomhs 210099 Nama Nadine Kodejur 3 Dengan >1 kriteria/kondisi SELECT * FROM tabel kondisi2 ……….. 2016 12 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom WHERE kondisi1 {AND,OR,XOR,NOT} PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Contoh : SELECT * FROM Pribadi WHERE kodejur=”2” nama=”Nadine” OR Hasil : Nomhs 210100 210012 210099 Nama Rina Gunawan Alexandra Nadine Kodejur 2 2 3 Menyaring data dengan karakter tengah SELECT * FROM tabel WHERE field LIKE “%kunci%” % : wildcard/ diabaikan %kunci : karakter didepan kunci diabaikan Kunci% : karakter dibelakang kunci diabaikan %kunci%:karakter didepan dan dibelakang kunci diabaikan Contoh : SELECT * FROM Pribadi WHERE nama LIKE “%ra%” Hasil : Nomhs 210090 210012 210002 Nama Gani Suprapto Alexandra Rizal Samurai Kodejur 1 2 1 Relasi antar tabel Digunakan untuk menghubungkan antar satu tabel dengan tabel lainnya. Kedua tabel akan ber relasi bila nilai data dari kedua tabel tersebut sama SELECT * FROM tabel1,tabel2 tabel2.kunci primer WHERE tabel1.kunci tamu= Tabel1.kunci tamu dan tabel2.kunci primer dapat dibalik sesuai keadaan relasi yang sesunguhnya 2016 13 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Contoh : SELECT * FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur Nomhs 210100 Nama Rina Gunawan Kodejur 2 *Kodejur 2 210090 210012 Gani Suprapto Alexandra 1 2 1 2 210099 210002 Nadine Rizal Samurai 3 1 3 1 NamaJur Teknik Informatika Sistem Informasi Teknik Informatika Sistem Informasi Sistem Informasi Ketua EnnySela,S.Kom.,M.Kom Harnaningrum,S.Si EnnySela,S.Kom.,M.Kom Harnaningrum,S.Si Harnaningrum,S.Si SELECT nomhs,nama,namajur FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur Hasil : Nomhs 210100 Nama Rina Gunawan NamaJur Teknik Informatika 210090 210012 Gani Suprapto Alexandra Sistem Informasi Teknik Informatika 210099 210002 Nadine Rizal Samurai Sistem Informasi Sistem Informasi SELECT nomhs,nama,namajur FROM Pribadi,jurusan WHERE pribadi.kodejur=jurusan.kodejur AND Namajur=”Teknik Informatika” Hasil : Nomhs 210100 Nama Rina Gunawan NamaJur Teknik Informatika 210012 Alexandra Teknik Informatika 2016 14 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id Daftar Pustaka 1. Microsoft Office Access 2007.CV. Andi offset Yogyakarta, Tahun 2007. 2. Connoly, Thomas; Begg, Carolyn; Strachan, Anne; Database Systems : A Practical Approach to Design, Implementation and Management, 3rd edition, Addison Wesley, 2001. 3. Elmasri, Ramez; Navathe, Shamkant B.; Fundamentals of Database Systems, The Benjamin/Cummings Publishing Company, Inc., California, 2001 2016 15 Aplikasi Komputer Dian Wirawan, S.Kom, M.Kom PusatBahan Ajar dan eLearning http://www.mercubuana.ac.id