Pengertian database
Basis Data (Database) Basis data (bahasa
Inggris: database), atau sering pula di eja basis data, adalah kumpulan
informasi yang disimpan di dalam komputer secara sistematik sehingga
dapat diperiksa menggunakan suatu program komputer untuk memperoleh
informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk
mengelola dan memanggil kueri (query) basis data disebut sistem
manajemen basis data (database management system, DBMS).Sistem basis
data dipelajari dalam ilmu informasi.Istilah “basis data” berawal dari
ilmu komputer. Meskipun kemudian artinya semakin luas,memasukkan hal-hal
di luar bidang elektronika, artikel ini mengenai basis data
komputer.Catatan yang mirip dengan basis data sebenarnya sudah ada
sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan
kumpulan data yang berhubungan dengan bisnis.Konsep dasar dari basis
data adalah kumpulan dari catatan-catatan, atau potongan dari
pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari
jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema.
Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan
di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema,
atau memodelkan struktur basis data: ini dikenal sebagai model basis
data atau model data. Model yang umum digunakan sekarang adalah model
relasional,yang menurut istilah layman mewakili semua informasi dalam
bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri
dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi
matematika). Dalam model ini, hubungan antar tabel diwakili dengan
menggunakan nilai yang sama antar tabel. Model yang lain seperti model
hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk
mewakili hubungan antar tabel.Istilah basis data mengacu pada koleksi
dari data-data yang saling berhubungan, dan perangkat lunaknya
seharusnya mengacu sebagai sistem manajemen basis data (database
management system/DBMS). Jika konteksnya sudah jelas, banyak
administrator dan programer menggunakan istilah basis data untuk kedua
arti tersebut.Basis data juga
dapat diartikan sebagai kumpulan dari item data yang saling berhubungan
satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema
atau struktur tertentu, tersimpan di hardware komputer dan dengan
software untuk melakukan manipulasi untuk kegunaan tertentu.
Bahasa Basis Data (Database) Bahasa basis
data merupakan bahasa yang digunakan oleh user untuk
berkomunikasi/berinteraksi dengan DBMS yang bersangkutan. Misalnya SQL,
dBase, QUEL,dan sebagainya.Secara umum bahasa basis data terdiri
atas:Data Definition Language (DDL), merujuk pada kumpulan perintah yang
dapat digunakan untuk mendefinisikan objek – objek basis data, seperti
membuat sebuah tabel basis data atau indeks primer atau sekunder.Data
Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat
digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke
suatu tabel,kemudian mengubahnya dan menghapusnya atau hanya sekedar
menampilkannya kembali.
Jenis DML
1. mensyaratkan agar pemakai menentukan data apa yang Prosedural diinginkan serta bagaimana cara mendapatkannya.
2. Nonprosedural pemakai menentukan data yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.SQL
(Structured Query Language) SQL adalah bahasa yang digunakan untuk
berkomunikasi dengan database. Menurut ANSI (American National Standards
Institute), bahasa ini merupakan standar untuk relational database
management systems (RDBMS).Pernyataan-pernyataan SQL digunakan untuk
melakukan beberapa tugas seperti : updatedata pada database atau
menampilkan data dari database. Hampir semua software database
mengimplementasikan bahasa SQL sebagai komponen utama dari
produknya,salah satunya MySQL.
Objektif (Tujuan) Basis Data
a) Kecepatan dan kemudahan (Speed)
Yaitu agar pengguna basis data dapat
menyimpan data, melakukan perubahan/manipulasi terhadap data, dan
menampilkan kembali data dengan lebih cepat dan mudah dibandingkan
dengan cara biasa (baik manual ataupun elektronis).
b) Efisiensi ruang penyimpanan (Space)
Dengan basis data kita mampu melakukan penekanan jumlah redundansi
(pengulangan) data, baik dengan menerapkan sejumlah pengkodean atau
dengan membuat relasi-relasi antara kelompok data yang saling
berhubungan.
c) Keakuratan (Accuracy) Agar data
sesuai dengan aturan dan batasan tertentu dengan cara memanfaatkan
pengkodean atau pembentukan relasi antar data bersama dengan penerapan
aturan/batasan (constraint) tipe data, domain data, keunikan data, dsb.
d) Ketersediaan (Avaibility) Agar data
bisa diakses oleh setiap pengguna yang membutuhkan, dengan penerapan
teknologi jaringan serta melakukan pemindahan/penghapusan data yang
sudah tidak digunakan / kadaluwarsa untuk menghemat ruang penyimpanan.
e) Kelengkapan (Completeness) Agar data
yang dikelola senantiasa lengkap baik relatif terhadap kebutuhan
pemakai maupun terhadap waktu, dengan melakukan penambahan baris-baris
data ataupun melakukan perubahan struktur pada basis data; yakni dengan
menambahkan field pada tabel atau menambah tabel baru.
f) Keamanan (Security) Agar data yang
bersifat rahasia atau proses yang vital tidak jatuh ke orang / pengguna
yang tidak berhak, yakni dengan penggunaan account (username dan
password) serta menerapkan pembedaan hak akses setiap pengguna terhadap
data yang bisa dibaca atau proses yang bisa dilakukan.
g) Kebersamaan pemakaian (Sharability)
Agar data yang dikelola oleh sistem mendukung lingkungan multiuser
(banyak pemakai), dengan menjaga / menghindari munculnya problem baru
seperti inkonsistensi data (karena terjadi perubahan data yang dilakukan
oleh beberapa user dalam waktu yang bersamaan) atau kondisi deadlock
(karena ada banyak pemakai yang saling menunggu untuk menggunakan data).
Kegunaan Basis Data Secara umum, seluruh
sistem dalam kehidupan bisa menggunakan konsep basis data dalam
pengelolaan informasi, karena semua sistem tersebut tak bisa lepas dari
fakta.Bidang-bidang fungsional yang memanfaatkan basis data dalam hal
efisiensi, akurasi dan kecepatan operasi antara lain adalah:
- Pergudangan (inventory), untuk perusahaan manufaktur (pabrik), grosir (reseller), apotik dan lain-lain.
- Akuntansi, untuk berbagai perusahaan Layanan pelanggan (Customer
care), untuk perusahaan yang berhubungan dengan banyak pelanggan (bank,
konsultan, dan lain- lain).Bentuk-bentuk Perusahaan yang memanfaatkan
Basis Data.
- Perbankan, dalam melakukan pengelolaan data nasabah, tabungan,
pinjaman, pembuatan laporan akuntansi, pelayanan informasi pada nasabah
dan lain-lain.
- Pendidikan / sekolah, dalam melakukan pengelolaan data siswa, penjadwalan kegiatan, perkuliahan, nilai, dan lain-lain.
- Telekomunikasi, dalam melakukan pengelolaan data administrasi kabel / data pelanggan, menangani gangguan, dan lain-lain.
Microsoft Access dan MySQL
Microsoft Access
Microsoft Access (Microsoft Office Access)
adalah sebuah program aplikasi basis data komputer relasional yang
ditujukan untuk kalangan rumahan, sekolahan dan perusahaan kecil hingga
menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi
Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan
Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data
Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang
intuitif sehingga memudahkan pengguna.Microsoft Access dapat
menggunakan data yang disimpan di dalam format MicrosoftAccess,
Microsoft Jet Database Engine, Microsoft SQL Server, Oracle Database,
atau semua kontainer basis data yang mendukung standar ODBC. Para
pengguna/programmer yang mahir dapat menggunakannya untuk mengembangkan
perangkat lunak aplikasi yang kompleks, sementara para programmer yang
kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak
aplikasi yang sederhana. Access juga mendukung teknik-teknik pemrograman
berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat
bantu pemrograman berorientasi objek.
Adapun Program Database siswa dan guru terdiri dari beberapa aplikasi,yaitu:
1.Aplikasi Input Data Guru
2.Aplikasi Input Data Siswa
3.Aplikasi Input Data Buku Induk
4.Aplikasi Tabel Siswa
5.Aplikasi Tabel Guru
1. Aplikasi Input Data Guru
Aplikasi ini berguna untuk memasukkan data pokok guru secara sederhana dan simpel.
Masukan meliputi :
1.1. NIP/NIG
1.2. Nama
1.3. Tempat/tgl lahir
1.4. Jenis Kelamin
1.5. Agama
1.6. No. Telepon
1.7. Jabatan
1.8. Golongan
1.9. Tanggal mulai bertugas
1.10. Honor guru /jam
1.11. Jam mengajar / minggu
1.12. Foto Guru
2. Aplikasi Input Data Siswa
Aplikasi ini berguna untuk memasukkan data pokok Siswa secara sederhana dan simpel.
Masukan meliputi :
2.1. No.Induk
2.2. Nama
2.3. Tempat/tgl lahir
2.4. Jenis kelamin
2.5. Agama
2.6. Kelas
2.7. Ruang
2.8. Jurusan
2.9. Foto siswa (bisa melalui webcam)
3. Aplikasi Input Data Buku Induk
Aplikasi ini berguna untuk memasukkan data lengkap siswa
Masukkan meliputi :
3.1. No.Induk –> outo loading dari input data siswa
3.2. Nama –> outo loading dari input data siswa
3.3. Tempat/tgl lahir –> outo loading dari input data siswa
3.4. Jenis kelamin –> outo loading dari input data siswa
3.5. Agama –> outo loading dari input data siswa
3.6. Foto siswa –> outo loading dari input data siswa
3.7. Kewarganegaraan
3.8. Jumlah sudara kandung
3.9. Jumlah saudara tiri
3.10. Nama ayah
3.11. Pendidikan ayah
3.12. Pekerjaan ayah
3.13. Penghasilan ayah
3.14. Nama ibu
3.15. Pendidikan ibu
3.16. Pekerjaan ibu
3.17. Penghasilan ibu
3.18. Alamat Orang tua
Pada aplikasi ini dilengkapi fasilitas untuk mencetak buku induk.
Sehingga jika suatu saat siswa memerlukan data buku induk tinggal sekali klik data yang diperlukan sudah jadi
4.Tabel Data Siswa
Aplikasi ini memudahkan bagian administrasi
sekolah untuk mengecek/mencetak data pokok siswa, cetakan bisa per siswa
maupun per kelas per ruang dan per jurusan. Dengan aplikasi ini
pekerjaan TU jelas lebih mudah (tinggal klik). Pada menu ini juga bisa
dicetak kartu akses program (id card) yang berisi data siswa dengan disertai barcode
5. Tabel Guru
Aplikasi ini membantu bagian administrasi
untuk mengecek/mencetak data guru baik berupa individu maupun semua guru
dalam bentuk tabel. Pada menu ini juga bisa dicetak kartu akses program (id card)yang berisi data guru dengan disertai barcode
Peralatan yang dibutuhkan :
1. Komputer
2. Software Kami
3. Smart IT Card / Id Card (optional)
4. Barcode scanner (optional)
MySQL
MySQL AB Versi rilis terbaru 5.0.41 / 1 Mei
2007 Sistem operasi antar-platform Jenis RDBMS Lisensi GPL atau Lisensi
Komersial Situs.
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 sebagai perangkat
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.Tidak
sama dengan proyek-proyek seperti Apache, dimana perangkat lunak
dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber
dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori
oleh sebuah perusahaan komersial Swedia MySQLAB, dimana memegang hak
cipta hampir atas semua kode sumbernya. Kedua orang Swediadan satu orang
Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan
Larsson,dan Michael “Monty” Widenius.Untuk
melakukan administrasi dalam basis data MySQL, dapat menggunakan modul
yang sudah termasuk yaitu command-line (perintah: mysql dan mysqladmin).
Juga dapat di-download dari situs MySQL yaitu sebuah modul berbasis
grafik (GUI): MySQL Administrator dan MySQL Query Browser. Selain itu
terdapat juga sebuah perangkat lunak gratis untuk administrasi basis
data MySQL berbasis web yang sangat populer yaitu php MyAdmin. Untuk
perangkat lunak untuk administrasi basis data MySQL yang dijual secara
komersial antara lain: MySQL front, Navicat dan EMS SQL Manager for
MySQL Perintah dasar MySQLBahasa SQL memiliki struktur yang mudah
dipahami karena perintah – perintahnya pada dasarnya dibuat dari bahasa
Inggris. Sehingga kita dapat melakukan perintah – perintah SQLke dalam
database MySQL, yaitu. Memasukkan atau menambah record baru ke dalam
database.b. Mengeksekusi query databasec. Mengambil data dari database.
Mengubah record pada database. Menghapus record pada database Perintah
SQL dapat diketik dengan huruf besar atau kecil (non case sensitive).
Setelah selesai mengetik perintah di MySQL harus diakhiri dengan tanda
titik koma sebagai penanda akhir dari perintah MySQL. Perintah SQL dapat
diketik dengan huruf besar atau kecil (non casesensitive). Setelah
selesai mengetik perintah di MySQL harus diakhiri dengan tanda titik
koma sebagai penanda akhir dari perintah MySQL.
Contoh pembuatan database dengan MySQL
Create Table :
MengisiTabel Guru
MengisiTabel Mata Pelajaran
MengisiTabelJenis_Kelamin
Mengisi Tabel Siswa
Hardware Database
Perangkat keras
– Prosesor atau CPU sebagai unit yang mengolah data
– Memori RAM, tempat menyimpan data sementara
– Hard drive, media penyimpanan semi permanen
– Perangkat masukan, media yang digunakan untuk memasukkan data untuk diproses oleh
– CPU, seperti mouse, keyboard, dan tablet
– Perangkat keluaran, media yang digunakan untuk menampilkan hasil keluaran pemrosesan
– CPU, seperti monitor dan printer
Software
Database
Perangkat Lunak Basis Data Perangkat lunak
basis data yang banyak digunakan dalam pemrograman dan merupakan
perangkat basis data aras tinggi (high level):
- Microsoft SQL Server
- Visual FoxPro
- Oracle
- Arago
- Force
- Sybase
- Recital
- Interbase
- dbFast
- XBase
- dbXL
- Firebird
- Quicksilver
- MySQL
- Clipper
- PostgreSQL
- FlagShip
- Microsoft Access
- Harbour 22. dBase III
- Visual dBase
- FoxPro
- Paradox
- Lotus Smart Suite Approach.
Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data rendah (low level), diantaranya:
1. Btrieve
2. Tsunami Record Manager
Ilmu Informasi adalah ilmu yang mempelajari
data dan informasi, dan mencakup cara bagaimana menginterpretasi,
menganalisa, menyimpan, dan mengambil kembali data dan informasi
tersebut. Ilmu informasi merupakan dasar dari analisa komunikasi dan
basis data.Secara lebih luas, ilmu informasi merupakan bidang
interdisipliner yang berkaitan dengan beberapa aspek ilmu komputer, ilmu
perpustakaan, dengan bidang kognitif, dan ilmu sosial. Sistem Manajemen
Basis Data Sistem manajemen basis data (Bahasa Inggris: database
management system, DBMS), atau kadang disingkat SMBD, adalah suatu
sistem atau perangkat lunak yang dirancang untuk mengelola suatu basis
data dan menjalankan operasi terhadap data yang diminta banyak pengguna.
Contoh tipikal SMBD adalah akuntansi, sumber daya manusia, dan system
pendukung pelanggan, SMBD telah berkembang menjadi bagian standar di
bagian pendukung (back office) suatu perusahaan. Contoh SMBD adalah
Oracle, SQL server 2000/2003, MS Access, MySQL dan sebagainya.DBMS
merupakan perangkat lunak yang dirancang untuk dapat melakukan
utilisasi dan mengelola koleksi data dalam jumah yang besar. DBMS juga
dirancang untuk dapat melakukan manipulasi data secara lebih mudah.
Sebelum adanya BMS maka data pada umumnya disimpan dalam bentuk flat
file, yaitu file teks yang ada pada sistem operasi.Sampai sekarangpun
masih ada aplikasi yang menyimpan data dalam bentuk flat secara
langsung. Menyimpan data dalam bentuk flat file mempunyai kelebihan dan
kekurangan.Penyimpanan dalam bentuk ini akan mempunyai manfaat yang
optimal jika ukuran filenya relatif kecil, seperti file password. File
password pada umumnya hanya digunakan untuk menyimpan nama yang
jumlahnya tidak lebih dari 1000 orang. Selain dalam bentuk flat
file,penyimpanan data juga dapat dilakukan dengan menggunakan program
bantu seperti spreadsheet. Penggunaan perangkat lunak ini memperbaiki
beberapa kelemahan dari flatfile, seperti bertambahnya kecepatan dalam
pengolahan data. Namun demikian metode ini masih memiliki banyak
kelemahan, diantaranya adalah masalah manajemen dan keamanan data yang
masih kurang.Penyimpanan data dalam bentuk DBMS mempunyai banyak manfaat
dan kelebihan dibandingkan dengan penyimpanan dalam bentuk flat file
atau spreadsheet, diantaranya :
1. Performance yang didapat dengan
penyimpanan dalam bentuk DBMS cukup besar, sangat jauh berbeda dengan
performance data yang disimpan dalam bentuk flat file. Disamping
memiliki unjuk kerja yang lebih baik, juga akan didapatkan efisiensi
penggunaan media penyimpanan dan memori
2. Integritas data lebih terjamin dengan
penggunaan DBMS. Masalah redudansi sering terjadi dalam DBMS. Redudansi
adalah kejadian berulangnya data atau kumpulan data yang sama dalam
sebuah database yang mengakibatkan pemborosan media penyimpanan.
3.Independensi Perubahan struktur database
dimungkinkan terjadi tanpa harus mengubah aplikasi yang mengaksesnya
sehingga pembuatan antarmuka ke dalam data akan lebih mudah dengan
penggunaan DBMS.
4. Sentralisasi. Data yang terpusat akan
mempermudah pengelolaan database. kemudahan di dalam melakukan bagi
pakai dengan DBMS dan juga kekonsistenan data yang diakses secara
bersama-sama akan lebiih terjamin dari pada data disimpan dalam bentuk
file atau worksheet yang tersebar.
5. Sekuritas. DBMS memiliki sistem keamanan
yang lebih fleksibel dari pada pengamanan pada file sistem operasi.
Keamanan dalam DBMS akan memberikan keluwesan dalam pemberian hak akses
kepada pengguna.Contoh SMBD
Akuntansi adalah pengukuran, penjabaran,
atau pemberian kepastian mengenai informasi yang akan membantu manajer,
investor, otoritas pajak dan pembuat keputusan lain untukmembuat alokasi
sumber daya keputusan di dalam perusahaan, organisasi, dan
lembagapemerintah. Akuntansi adalah seni dalam mengukur, berkomunikasi
dan menginterpretasikan aktivitas keuangan.Sumber daya manusia atau
biasa disingkat menjadi SDM potensi yang terkandung dalam diri manusia
untuk mewujudkan perannya sebagai makhluk sosial yang adaptif dan
transformatif yang mampu mengelola dirinya sendiri serta seluruh potensi
yang terkandungdi alam menuju tercapainya kesejahteraan kehidupan dalam
tatanan yang seimbang dan berkelanjutan. Dalam pengertian praktis
sehari-hari, SDM lebih dimengerti sebagai bagian integral dari sistem
yang membentuk suatu organisasi. Oleh karena itu, dalam bidang kajian
psikologi, para praktisi SDM harus mengambil penjurusan industri dan
organisasi.
Jaringan dan Telekomunikasi Database
Pengertian Jaringan
Jaringan adalah kumpulan dari sistem
komputer yang saling terhubung satu sama lain. Jaringan komputer adalah
sebuah kumpulan komputer, printer dan peralatan lainnya yang terhubung.
Informasi dan data bergerak melalui kabel-kabel sehingga memungkinkan
pengguna jaringan komputer dapat saling bertukar dokumen dan data,
mencetak pada printer yang sama dan bersama sama menggunakan hardware / software yang terhubung dengan jaringan. Tiap komputer, printer atau periferal yang terhubung dengan jaringan disebut node.
Sebuah jaringan komputer dapat memiliki dua, puluhan, ribuan atau
bahkan jutaan node. Sebuah jaringan biasanya terdiri dari dua atau lebih
komputer yang saling berhubungan di antara satu dengan yang lain, dan
saling berbagi sumber daya misalnya ; CDROM, Printer, pertukaran data
atau memungkinkan untuk saling berkomunikasi secara elektronik. Komputer
yang terhubung tersebut, dimungkinkan berhubungan dengan media kabel,
saluran telepon, gelombang radio, satelit, atau sinar infra merah.
Pengertian Telekomunikasi
Telekomunikasi adalah kumpulan hardware dan software
yang menerima atau mengirimkan informasi dari satu sistem informasi ke
sistem informasi lainnya.Adapun dalam Databse menggunakan jaringan LAN
(Local Area Network).
A.Local Area Network (LAN) atau Jaringan Area Lokal
Keamanan Database
keamanan sistem computer dalam Database di katagorikan dalam beberapa aspek yaitu :
1.Privacy / Confidentiality
Inti utama aspek privacy atau
confidentiality adalah usaha untuk menjaga informasi dari orang yang
tidak berhak mengakses. Privacy lebih kearah data-data yang sifatnya
privat sedangkan confidentiality biasanya berhubungan dengan data yang
diberikan ke pihak lain untuk keperluan tertentu (misalnya sebagai
bagian dari pendaftaran sebuah servis) dan hanya diperbolehkan untuk
keperluan tertentutersebut.
2.Integrity
Aspek ini menekankan bahwa informasi tidak
boleh diubah tanpa seijin pemilik informasi. Adanya virus, trojan horse,
atau pemakai lain yang mengubah informasi tanpa ijin merupakan contoh
masalah yang harus dihadapi. Sebuah e-mail dapat saja “ditangkap”
(intercept) di tengah jalan, diubah isinya (altered,tampered, modified),
kemudian diteruskan ke alamat yang dituju. Dengan kata lain, integritas
dari informasi sudah tidak terjaga. Penggunaan encryption dandigital
signature, misalnya, dapat mengatasi masalah ini.
3.Authentication
Aspek ini berhubungan dengan metoda untuk
menyatakan bahwa informasi betul- betul asli, orang yang mengakses atau
memberikan informasi adalah betul-betul orang yang dimaksud, atau
server yang kita hubungi adalah betul-betul server yang asli.
4.Availability
Aspek availability atau ketersediaan
berhubungan dengan ketersediaan informasi ketika dibutuhkan. Sistem
informasi yang diserang atau dijebol dapat menghambat atau meniadakan
akses ke informasi
5.Nonrepudiation
Merupakan hal yang bersangkutan dengan
sipengirim, sipengirim tidak dapat mengelak bahwa dialah yang mengirim
pesan/informasi itu.
6.Access control
Pengaturan (user ID) Aspek ini berhubungan
dengan cara pengaturan akses kepada informasi. Hal itu biasanya
berhubungan dengan masalah authentication dan juga privacy. Acces
control seringkali dilakukan menggunakan kombinasi user id dan password
atau dengan menggunakan mekanisme lainnya.
Aspek-aspek ancaman keamanan komputer :
1.Interruption
Merupakan suatu ancaman terhadap
availibility. Informasi dan data yang ada dalam sistem komputer dirusak
dan dihapus sehingga jika dibutuhkan, data atau informasi tersebut tidak
ada lagi.
2.Interception
Merupakan ancaman terhadap kerahasiaan
(secrecy). Informasi yang ada disadap atau orang yang tidak berhak
mendapatkan akses ke komputer dimana informasi tersebut disimpan.
3.Modifikasi
Merupakan ancaman terhadap integritas, orang
yang tidak berhak berhasil menyadap lalulintas informasi yang sedang
dikirim dan diubah sesuai keinginan orang tersebut.
4.Febrication
Merupakan ancaman terhadap integritas. Orang
yang tidak berhak berhasil meniru (memalsukan) suatu informasi yang
ada sehingga orang yang menerima informasi tersebut menyangka informasi
tersebut berasal dari orang yang dikehendaki oleh si penerima informasi
tersebut.
Pengembangan Sistem Database
Perkembangan teknologi basis data tidak lepas dari perkembangan teknologi komputer, baik pada perangkat keras (hardware) maupun perangkat lunak (software)nya.
Perkembangan teknologi jaringan komputer dan komunikasi data merupakan
salah satu penyumbang kemajuan penerapan basis data yang kemudian
melahirkan sistem basis data terdistribusi. Dampak perkembangan ini
tentu saja dapat dirasakan dalam kehidupan kita. Perkembangan pada dunia
perangkat lunak, juga mempengaruhi perkembangan basis data, sehingga
lahirlah basis data berorientasi objek dan basis data cerdas. Tabel
berikut ini memperlihatkan perkembangan teknologi basis data.
| Era |
Perkembangan Basis Data |
| 1960-an |
– Sistem pemrosesan berkas
– DBMS
– Layanan informasi secara online berbasis manajemen teks |
| 1970-an |
– Penerapan sistem pakar pada suatu sistem pendukung pengambilan keputusan
– Basis data berorientasi objek |
| 1980-an |
– Sistem hyperteks, yang memungkinkan
untuk melihat basis data secara acak menurut suatu kunci (seperti yang
diterapkan di internet) |
| 1990-an |
– Sistem basis data cerdas
– Sistem basis multimedia cerdas |
Tujuan akhir dari pembuatan Data warehouse :
– Menyediakan data organisasi yang mudah diakses oleh manager.
– Data yang berada di datawarehouse bersifat konsisten, dan merupakan kebenaran.
– Data warehouse merupakan tempat, dimana data yang telah digunakan di publikasikan.
– Kualitas data di datawarehouse dapat diandalkan.
Pengertian Query
Query
adalah semacam kemampuan
untuk menampilkan suatu data dari database dimanamengambil dari table-tabel
yang ada di database, namun tabel tersebut tidak semuaditampilkan sesuai dengan
yang kita inginkan. data apa yang ingin kita tampilkan.misal : data peminjam
dengan buku yang dipinjam, maka nanti akan mengambil data daritable peminjam
dan tabel buku.
Query
adalah suatu extracting
data dari suatu database dan menampilkannya untuk
“pengolahan” lebih
lanjut.
Query
adalah pertanyaan atau
permintaan informasi tertentu dari sebuah basisdata yangditulis dalam format
tertentu.
Query
adalah perintah-perintah
untuk mengakses data pada sistem basis data
Query
adalah merupakan bahasa
untuk melakukan manipulasi terhadap database, yang telahdistandarkan dan lebih
dikenal dengan nama Structured Query Language (SQL)
Bahasa query
(query language) adalah
bahasa khusus yang digunakan untuk melakukanquery pada basis data. Contoh penggunaan
bahasa query adalah: SELECT ALL WHERE
kota=”Yogyakarta” AND
umur<40. Query ters
ebut meminta semua
record dari basis datayang sedang digunakan (misalkan basisdata konsumen) yang
bertempat tinggal di Yogyakartadan berumur lebih dari 40 tahun (kota dan umur
adalah nama field yang telah didefinisikan).Standar bahasa query yang banyak
digunakan adalah SQL (structured query language).Metode ini paling rumit tetapi
paling fleksibel dibandingkan metode query yang lain, querydengan parameter
yang telah tersedia dan query by example.
Query dibedakan menjadi
2
, yaitu1. Untuk
membuat/mendefinisikan obyek-obyek database seperti membuat tabel, relasi
dansebagainya. Biasanya disebut dengan Data Definition Language (DDL)2. Untuk
memanipulasi data, yang biasanya dikenal dengan Data Manipulation
Language(DML). Manipulasi data bisa berupa:a. Menambah, mengubah atau menghapus
data.b. Pengambilan informasi yang diperlukan dari database, yang mana datanya
diambil daritabel maupun dari query sebelumnya
Sabtu,
11 April 2009
Contoh DDL & DML dalam database
Sebuah basis data biasanya dapat dipilih ke dalam 2 bentuk yaitu:
1. Data
Definition Language(DDL)
2. Data
Manipulation Languange(DML)
1. DDL
Struktur/skema basis data yang menggambarkan/mewakili desain basis data
secara keseluruhan didefinisikan dengan bahasa khusus yang disebut DDL. Dengan
bahasa inilah kita dapat membuat tabel baru, membuat indeks, mengubah tabel,
menentukan struktur penyimpanan tabel dan sebagainya. Hasil dari kompilasi
perintah DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut
Kamus Data
Contohnya :
a. Create database : adalah perintah yang di gunakan untuk memulai
membuat database.
b. Modify database : adalah perintah yang digunakan untuk memodifikasi
database.
c. Create table : adalah perintah yang digunakan untuk membuat tabel.
d. Modify table : adalah perintah yang digunakan untuk memodifikasi
table.
2. DML
Merupakan bentuk bahasa basis data yang berguna untuk melakukan
manipulasi dan pengambilan data pada suatu basis data. Manipulasi data dapat
berupa:
a. Penyisipan/Penambahan data baru ke suatu basis data
b. Penghapusan data dari suatu basis data
c. Pengubahan data dari satu basis data
Pada kesempatan kali ini saya akan menjelaskan contoh-contoh query dalam
MySQL. Tabel-tabel yang akan kita gunakan adalah sebagai berikut:
- matakuliah(kodemk, namamk, sks), berisi daftar matakuliah yang ditawarkan
- dosen(nip, nama), berisi daftar dosen pengampu kuliah
- mahasiswa(nim, nama, dosenpembimbing), berisi daftar mahasiswa
- kuliah(kodekuliah, kodemk, nip, thnakademik, semester), berisi daftar matakuliah dan dosen pengampu
- peserta(nim, kodekuliah, nilai), berisi kuliah yang diikuti mahasiswa beserta nilainya dalam huruf
Dalam pembahasan kali ini diasumsikan:
- matakuliah hanya ditawarkan sekali dalam
setahun, yaitu pada semester 1 (ganjil) saja atau semester 2 (genap)
saja dan tidak kedua-duanya.
- bila pernah mengulang matakuliah, nilai yang diikutkan untuk perhitungan IP adalah nilai terakhir
- matakuliah dikatakan lulus bila nilai yang diperoleh minimal ‘D’
Berikut ini adalah contoh-contoh query dalam MySQL:
1. Menampilkan banyaknya SKS yang telah diselesaikan oleh masing-masing mahasiswa
a. Bila matakuliah yang diulang semua masuk dalam perhitungan
SELECT nim, SUM( sks ) jumlahsks
FROM peserta, (
SELECT kodekuliah, kuliah.kodemk, sks
FROM kuliah, matakuliah
WHERE kuliah.kodemk = matakuliah.kodemk
) A
WHERE peserta.kodekuliah = A.kodekuliah
GROUP BY nim
Penjelasan:
Pada query ini kita menampilkan jumlah SKS yang telah diselesaikan oleh
masing-masing mahasiswa bila matakuliah yang diulang semua masuk dalam
perhitungan. Pertama-tama, kita melakukan join tabel kuliah dengan
tabel matakuliah pada kondisi kodemk pada tabel kuliah sama
dengan kodemk pada tabel matakuliah untuk
mendapatkankodekuliah, kodemk dan sks.
…(
SELECT kodekuliah, kuliah.kodemk, sks
FROM kuliah, matakuliah
WHERE kuliah.kodemk = matakuliah.kodemk
) A
…
Lalu hasil join tersebut diberi alias A. Selanjutnya, tabel A tadi kita
join-kan dengan tabel peserta pada kondisi kodekuliah pada
tabel peserta sama dengan kodekuliah pada tabelA untuk
mendapatkan nim dan sks yang selanjutnya kita
menjumlahkan sks dengan SUM(sks) yang dikelompokkan
berdasarkan nim menggunakan GROUP BY nim.
b. Bila matakuliah yang diulang hanya yang sesuai dengan asumsi yang masuk dalam perhitungan
SELECT nim, SUM( sks ) totalsks
FROM (
SELECT DISTINCT nim, kodemk
FROM peserta, kuliah
WHERE peserta.kodekuliah = kuliah.kodekuliah
)P, matakuliah
WHERE P.kodemk = matakuliah.kodemk
GROUP BY nim
Penjelasan:
Pada query ini kita menampilkan jumlah SKS yang telah diselesaikan oleh
masing-masing mahasiswa bila matakuliah yang diulang hanya dihitung
sekali. Pertama-tama kita melakukan join tabel peserta dengan
tabel kuliah pada kondisi kodekuliah pada tabel peserta sama
dengan kodekuliah pada tabel kuliah untuk mendapatkan nim dan kodemk.
… (
SELECT DISTINCT nim, kodemk
FROM peserta, kuliah
WHERE peserta.kodekuliah = kuliah.kodekuliah
)P …
Kata DISTINCT setelah SELECT digunakan untuk menghilangkan pengulangan
record yang mempunyai nim dan kodemk yang sama agar matakuliah yang
diulang oleh seorang mahasiswa hanya muncul sekali. Hasil join tersebut
diberi alias P. Lalu tabel P kita join-kan dengan tabel matakuliah pada
kondisi kodemk pada tabel P sama dengan kodemk pada
tabel matakuliah untuk mendapatkan nim dan sks yang dijumlahkan
dengan SUM(sks) setelah dikelompokkan berdasarkan GROUP BY nim.
2. Menampilkan data-data yang bisa untuk melakukan perhitungan IPK (berdasar asumsi di atas)
SELECT nim, kuliah.kodemk, nilai, sks
FROM peserta, matakuliah, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
AND kuliah.kodemk = matakuliah.kodemk
AND (
nim, kuliah.kodemk, thnakademik
)
IN (
SELECT nim, kodemk, MA thnakademik ) thnterakhir
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
)
Penjelasan:
Pada query ini kita melakukan join pada tiga tabel,
yaitu peserta, matakuliah dan kuliah dengan kondisi kodekuliah pada
tabel kuliah sama dengan kodekuliah pada tabelpeserta dan kodemk pada
tabel kuliah sama dengan kodemk pada tabel matakuliah. Setelah itu kita
lakukan operasi intersection dengan query yang menampilkan tahun
terakhir menyelesaikan suatu matakuliah.
…
AND (
nim, kuliah.kodemk, thnakademik
)
IN (
SELECT nim, kodemk, MA thnakademik ) thnterakhir
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
)
Pada query untuk menampilkan tahun terakhir menyelesaikan suatu
matakuliah, kita melakukan join pada tabel peserta dan
tabel kuliah dengan kondisi kodekuliah pada tabel kuliahsama
dengan kodekuliah pada tabel peserta. Lalu untuk mencari tahun terakhir
digunakan fungsi MA

thnakademik) setelah
dikelompokkan berdasarkan nim dan kodemk denganGROUP BY nim, kodemk.
Lalu operasi intersection dilakukan dengan memeriksa apakah record nim,
kodemk, thnakademik dari hasil join tiga tabel ada pada hasil query
untuk menampilkan tahun terakhir menyelesaikan suatu matakuliah.
3. Menampilkan dosen yang pernah mengampu kelas matakuliah yang pesertanya tidak lebih dari 15 mahasiswa
SELECT DISTINCT nip
FROM kuliah, (
SELECT kodekuliah, COUNT( * ) jumlahpeserta
FROM peserta
GROUP
BY kodekuliah
) banyakpeserta
WHERE kuliah.kodekuliah = banyakpeserta.kodekuliah
AND jumlahpeserta <=15
Penjelasan:
Pada query ini kita akan menampilkan dosen yang pernah mengampu
matakuliah yang pesertanya <= 15 mahasiswa. Awalnya menggunakan
tabel peserta, kita hitung dahulu jumlah peserta dari setiap kuliah
dengan menggunakan COUNT setelah dikelompokkan berdasarkan kodekuliah dengan GROUP BY kodekuliah.
…(
SELECT kodekuliah, COUNT( * ) jumlahpeserta
FROM peserta
GROUP
BY kodekuliah
) banyakpeserta
…
Setelah itu query tersebut diberi alias banyakpeserta. Lalu pada query
utama kita melakukan join pada tabel banyakpeserta dengan
tabel kuliah pada kondisi kodekuliah pada tabelkuliah sama
dengan kodekuliah pada tabel banyakpeserta serta menambahkan kondisi
jumlahpeserta <= 15. Pada query utama kita menampilkan nip yang di
dahului dengan kataDISTINCT agar nip yang ditampilkan tidak ada
perulangan.
4. Menampilkan nama mahasiswa yang telah lulus lebih dari 100 SKS
SELECT nama
FROM (
SELECT nim, SUM( sks ) jumlahsks
FROM peserta, kuliah, matakuliah
WHERE nilai < 'E'
AND kuliah.kodekuliah = peserta.kodekuliah
AND kuliah.kodemk = matakuliah.kodemk
GROUP
BY nim
) yanglulus, mahasiswa
WHERE jumlahsks >100
AND yanglulus.nim = mahasiswa.nim
Penjelasan:
Pada query ini kita akan menampilkan nama mahasiswa yang telah lulus
> 100 SKS. Mula-mula kita menghitung jumlah SKS dari matakuliah yang
lulus untuk masing-masing mahasiswa. Kita melakukan join pada tiga
tabel peserta, kuliah dan matakuliah dengan kondisi kodekuliah pada
tabel kuliah sama dengan kodekuliah pada tabel peserta dan kodemk pada
tabel kuliah sama dengan kodemk pada tabel matakuliah disertai dengan
kondisi nilai < ‘E’ yang berarti nilai >= ‘E’ tidak diikutkan.
Lalu sks yang memenuhi kondisi dijumlahkan dengan SUM(sks) yang diberi
alias jumlahsks setelah dikelompokkan berdasarkan nim dengan GROUP BY
nim. Query tersebut diberi alias jumlahlulus.
…(
SELECT nim, SUM( sks ) jumlahsks
FROM peserta, kuliah, matakuliah
WHERE nilai < 'E'
AND kuliah.kodekuliah = peserta.kodekuliah
AND kuliah.kodemk = matakuliah.kodemk
GROUP
BY nim
) yanglulus …
Pada query utama kita melakukan join pada
tabel yanglulus dengan mahasiswa dengan kondisi nim pada
tabel yanglulus sama dengan nim pada tabel mahasiswa disertai
kondisijumlahsks > 100 untuk menampilkan nama mahasiswa yang telah
lulus > 100 SKS.
5. Menampilkan banyaknya siswa yang telah lulus tugas akhir bila kode matakuliah untuk tugas akhir adalah ‘M0012’
SELECT COUNT( * ) lulusTA
FROM peserta, kuliah
WHERE nilai < 'E'
AND kuliah.kodekuliah = peserta.kodekuliah
AND kodemk = 'M0012'
Penjelasan:
Pada query kali ini kita akan menampilkan jumlah mahasiswa yang telah
lulus tugas akhir bila kode matakuliah tugas akhir = ‘M0012’.
Pertama-tama kita melakukan join pada tabel peserta dankuliah dengan
kondisi kodekuliah pada tabel kuliah sama dengan kodekuliah pada
tabel peserta untuk mendapatkan nilai dan kodemk. Lalu hasil join
tersebut kita saring dengan kondisi nilai < ‘E’ dan kodemk =
‘M0012’ yang selanjutnya setelah disaring kita hitung dengan COUNT

dan diberi alias lulusTA untuk menghitung jumlah mahasiswa yang telah lulus tugas akhir.
6. Menampilkan daftar nomor dan nama mahasiswa beserta IP berdasar dua asumsi di atas
SELECT buatip.nim, nama, (
SUM( nilaisks ) / SUM( sks )
) ip
FROM mahasiswa, (
SELECT nim, kuliah.kodemk, (
( 69 – ASCII( UPPER( nilai ) ) ) * sks
) nilaisks, sks
FROM peserta, matakuliah, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
AND kuliah.kodemk = matakuliah.kodemk
AND (
nim, kuliah.kodemk, thnakademik
)
IN (
SELECT nim, kodemk, MA thnakademik ) thnterakhir
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
)
)buatip
WHERE mahasiswa.nim = buatip.nim
GROUP BY nim
Penjelasan:
Pada query yang cukup panjang ini. kita akan menampilkan nomor dan nama
mahasiswa beserta IP berdasar dua asumsi di atas. Pada awalnya kita
membuat query untuk menampilkan nim,kodemk dan nilai yang sudah
dikali sks. Query ini mirip seperti query yang dijelaskan pada nomor 2
dengan sedikit perubahan.
…(
SELECT nim, kuliah.kodemk, (
( 69 – ASCII( UPPER( nilai ) ) ) * sks
) nilaisks, sks
FROM peserta, matakuliah, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
AND kuliah.kodemk = matakuliah.kodemk
AND (
nim, kuliah.kodemk, thnakademik
)
IN (
SELECT nim, kodemk, MA thnakademik ) thnterakhir
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
)
) buatip
Bagian yang ditebalkan merupakan perubahan yang dilakukan untuk query
kali ini. Hasil query tersebut diberi alias buatip. Lalu kita melakukan
join pada tabel buatip dan tabel nama dengan kondisi nim pada
tabel mahasiswa sama dengan nim pada tabel buatip untuk
mendapatkan nama. Selanjutnya untuk menghitung IP, kita menjumlahkan
semua nilaisks dan membaginya dengan jumlah sks dengan SUM(nilaisks) /
SUM(sks) setelah dikelompokkan menurut nim-nya dengan menggunakan GROUP
BY nim.
7. Menghitung IP bila asumsi kedua di atas diganti bahwa nilai yang
dipakai untuk penentuan IP adalah nilai yang terbaik (dari serangkaian
mengulang matakuliah)
SELECT nim, (
SUM( nilaimaxsks ) / SUM( sks )
)ip
FROM (
SELECT nim, (
( 69 – ASCII( UPPER( nilaimax ) ) ) * sks
)nilaimaxsks, sks
FROM matakuliah, (
SELECT nim, kodemk, MIN( nilai ) nilaimax
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
) nilaiterbaik
WHERE nilaiterbaik.kodemk = matakuliah.kodemk
)buatip
GROUP BY nim
Penjelasan:
Pada query ini kita akan menampilkan IP dengan asumsi kedua diganti
menjadi nilai yang dipakai untuk menghitung IP adalah nilai yang
terbaik. Mula-mula kita mencari nilai terbaik pada setiap matakuliah
untuk masing-masing mahasiswa. Kita melakukan join pada
tabel peserta dengan tabel kuliah pada kondisi kodekuliah pada
tabel kuliah sama dengan kodekuliah pada tabel peserta untuk
mendapatkan kodemk dan nilai. Lalu kita mencari nilai terbaik dari
setiap matakuliah untuk masing-masing mahasiswa
dengan MIN(nilai) setelah dikelompokkan
berdasarkan nim dan kodemk dengan menggunakan GROUP BY nim,
kodemk karena nilai ascii ‘A’ < ‘B’ < ‘C’ < ‘D’ < ‘E’.
…(
SELECT nim, kodemk, MIN( nilai ) nilaimax
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
) nilaiterbaik
…
Hasil query tersebut diberi alias nilaiterbaik. Setelah itu kita
melakukan join tabel nilaiterbaik dengan tabel matakuliah pada
kondisi kodemk pada tabel nilaiterbaik sama dengan kodemk pada
tabel kuliah untuk mendapatkan sks.
Selanjutnya ditampilkan nim, nilaimaxsks yang merupakan nilaimax dikali sks serta sks.
…(
SELECT nim, (
( 69 – ASCII( UPPER( nilaimax ) ) ) * sks
)nilaimaxsks, sks
FROM matakuliah, (
SELECT nim, kodemk, MIN( nilai ) nilaimax
FROM peserta, kuliah
WHERE kuliah.kodekuliah = peserta.kodekuliah
GROUP BY nim, kodemk
) nilaiterbaik
WHERE nilaiterbaik.kodemk = matakuliah.kodemk
)buatip
…
Hasil query tersebut diberi alias buatip. Kemudian kita menghitung IP
seperti query pada nomor 6 yaitu SUM(nilaimaxsks) / SUM(sks) setelah
dikelompokkan berdasarkan nimdengan menggunakan GROUP.