Basis data terdiri dari 2 kata, yaitu basis dan data. Basis adalah markas/gudang,
tempat bersarang atau berkumpul, sedangkan data adalah representasi fakta dunia
nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan),
barang, hewan, peristiwa, konsep, keadaan dan sebagainya yang direkam dalam
bentuk angka, huruf, simbol, teks, gambar, bunyi dan kombinasinya.
Sebuah basis data umumnya dibuat untuk mewakili sebuah semesta data yang
spesifik. Misalnya basis data kepegawaian, basis data akademik, basis data inventori
(pergudangan) dan sebagainya. Dalam basis data akademik, misalnya kita dapat
menempatkan file mata pelajaran, file guru, file jadwal, file nilai dan seterusnya. Oleh
karena itu operasi-operasi dasar yang dapat kita lakukan berkenaan dengan basis data
dapat meliputi:
- Pembuatan basis data baru (create database) yang identik dengan pembuatan lemari
arsip yang baru.
- Penghapusan basis data (drop database) yang identik dengan perusakan lemari rasip.
- Pembuatan file/tabel baru ke suatu basis data (create table), identik dengan
penambahan map arsip baru.
- Penghapusan file/tabel dari suatu basis data (drop tabel).
- Penambahan/pengisian data baru ke sebuah file/table di sebuah basis data.
- Pengambilan data dari sebuah file/tabel.
- Pengubahan data dari sebuah file/tabel.
- Penghapusan data dari sebuah file/tabel.
4. DBMS
DBMS merupakan software yang digunakan untuk membangun suatu sistem basis
data yang “sempurna”. DBMS harus dapat mengatur basis data tersebut sehingga
dapat tersimpan dengan baik tanpa menimbulkan kekacauan, dapat dipakai oleh
banyak user sesuai dengan kepentingan masing-masing, melindungi dari gangguan
pihak-pihak yang tidak berwenang.
Sistem basis data (DBMS) merupakan salah satu komponen penting dalam sistem
informasi, karena merupakan dasar dalam menyediakan informasi. DBMS juga sebagai
penentu kualitas informasi : akurat, tepat pada waktunya dan relevan. Namun demikian,
tentu saja Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan
dengan biaya untuk mendapatkannya. Sasaran utama DBMS adalah menyediakan
lingkungan yang nyaman dan efisien dalam menyimpan dan mengambil informasi ke
dan dari basis data.
Dalam relational database model, sebuah database adalah kumpulan relasi yang
saling terhubung satu sama lainnya. Relasi adalah istilah dalam relational database,
tapi kita lebih familiar jika menyebutnya sebagai tabel. Selayaknya tabel yang memiliki
kolom dan baris, dalam relational database, kolom (column) disebut attribute,
sedangkan baris (row) disebut tuple. Hal ini hanya sekedar penamaan, dan agar lebih
gampang, kita hanya akan menggunakan istilah tabel, kolom dan baris dalam tutorial
ini, namun jika anda menemui istilah relation, attribut dan tuple, itu hanya penamaan
lain dari tabel, kolom, dan baris.
6. Candidate Key (Kunci Kandidat)
Tempat Kode
NIM Nama Tanggal Lahir No KTP Lahir Jurusan
Nomor KTP juga merupakan candidate key yang bagus, setidaknya setiap orang akan
memiliki Nomor KTP yang berbeda-beda. Namun dalam beberapa kasus, nomor KTP
tidak selalu ada, karena bisa saja seseorang belum memiliki KTP karena sesuatu dan
lain hal. Beberapa karakteristik Candidate key : unik (tidak boleh berulang), tidak boleh
memiliki nilai null (kosong), nilai dari candidate key akan sangat jarang berubah.
Primary Key (Kunci Utama)
Dalam sebuah tabel, akan terdapat beberapa candidate key, namun hanya ada
1 Primary key (kunci utama). Primary key adalah salah satu candidate key yang kita
nobatkan sebagai kolom unik untuk identifikasi baris dalam tabel. Kolom ini tidak boleh
berulang, dan tidak boleh kosong (null). Dari tabel data_mahasiswa, NIM dapat kita
tetapkan sebagai primary key.
Foreign Key (Kunci Tamu)
Dalam sebuah database, biasanya akan terdapat beberapa tabel. Tabel-tabel ini dapat
dihubungkan satu dengan yang lainnya dengan kolom yang merupakan bagian dari tabel
lain. Foreign Key (Kunci Tamu) adalah Primary key dari tabel lainnya yang terdapat di
tabel saat ini. Di dalam contoh tabel 4.2 : Tabel data_mahasiswa dapat terlihat bahwa
NIM adalah primary key dari tabel data_mahasiswa, dan kode_jurusan adalah primary
key pada tabel_jurusan. Kedua tabel tersebut dihubungkan oleh kolom kode jurusan.
Tempat Kode
NIM Nama Tanggal Lahir No KTP Lahir Jurusan
7. Referential Integrity
Referential Integrity berkaitan erat dengan foreign key. Pada dasarnya Referential
Integrity adalah penerapan aturan bahwa untuk setiap foreign key yang terdapat pada
suatu tabel, harus ada nilainya di tabel asal kolom tersebut. Dalam contoh kita, pada
tabel 4.2 dan 4.3 setiap kode_jurusan dalam tabel data_mahasiswa harus ada nilainya
dalam tabel kode_jurusan. Di dalam tabel data_mahasiswa kita tidak bisa memasukkan
nilai 20, karena di tabel kode_jurusan, kode jurusan 20 belum diinput. Dan jika kita ingin
menghapus suatu jurusan dari tabel_jurusan, semua mahasiswa harus terlebih dahulu
sudah tidak ada yang memiliki kode jurusan tersebut.
8. Index
Index dalam database adalah sebuah struktur data yang diimplementasikan oleh
RDBMS untuk mempercepat proses pembacaan data. Index lebih kepada penerapan
algoritma dari masing-masing aplikasi database, dan diterapkan ke dalam kolom dari
tabel yang kita inginkan. Mirip Index yang ada di belakang buku, index seolah-olah
daftar cepat untuk mencari sesuatu oleh RDBMS. Kita dapat mendeklarikan kolom
mana saja yang akan diindex.
Untuk MySQL, kolom yang ditetapkan sebagai primary key akan otomatis di-index.
Tetapi dalam satu tabel, bisa saja terdapat beberapa kolom yang di index. Pertanyaanya,
jika index digunakan untuk mempercepat proses pembacaan, kenapa tidak semua
kolom saja kita index? Jawabannya, karena index sendiri juga memiliki kelemahan.
Ketika data baru ditambahkan atau terdapat data yang akan dirubah, index yang
tersimpan untuk tabel tersebut harus dibuat ulang, sehingga memperlama proses
penambahan data. Namun untuk tabel yang jarang bertambah, index menawarkan
perfoma yang cepat untuk pembacaan data.
9. Normalisasi Database
10. DML
Bentuk manipulasi yang dapat dilakukan oleh DML diantaranya adalah untuk keperluan
pencarian kembali data lama, penyisipan data baru, penghapusan data, pengubahan
data, dll. Sedangkan DML sendiri menurut jenisnya dapat dibagi menjadi 2 jenis yaitu
procedural dan non procedural.
Beberapa manfaat atau kegunaan dari DML diantaranya adalah sebagai berikut :
5.Query adalah perintah yang ditulis untuk mengambil informasi. Bagian dari DML
yang menangani pengambilan informasi ini disebut bahasa query.
Selanjutnya kita akan membahasa tentang sintaks dan contoh dari penggunaan DML,
yaitu :
1. Insert
Berfungsi Untuk memasukkan sejumlah data kedalam table yang telah dibuat.
Syntax:
Contoh:
2. Delete
Berfungsi untuk menghapus sejumlah data yang ada didalam table yang telah dibuat.
Syntax:
Contoh:
3. Update
èBerfungsi untuk melakukan perubahan terhadap sejumlah data yang ada didalam
table yang telah dibuat.Syntax:
update table_name
set column1_name=column1_content
where column2_name=column2_content;
Contoh:
update pegawai
where nrp=’5106100032?;
4. Select
Berfungsi untuk melakukan pengambilan sejumlah data yang ada di dalam table untuk
ditampilkan ataupun dimanipulasi
Syntax:
Contoh:
11. DDL
DDL atau Data Definiton Language adalah sebuah bahasa yang digunakan untuk
mendefinisikan pendefinisian data. Terdiri dari perintah-perintah untuk membentuk,
mengubah atau menghapus tabel beserta kolom-kolom dan type data penyusunnya,
serta perintah-perintah untuk menetapkan hubungan dan batasan-batasan data.
- CREATE TABLE
(deptno NUMBER(2),
dname VARCHAR2(14),
loc VARCHAR2(13));
- ALTER TABLE
[, column datatype]...);
Contoh penambahan kolom pada tabel dept yang dibuat di atas adalah :
Kita dapat memodifikasi kolom dengan mengubah tipe datanya, ukuran dan nilai
defaultnya.
Sintaks dari perintah ALTER TABLE untuk memodifikasi kolom sebagai berikut :
Contoh :
Table altered.
~ Menghapus kolom
Klausa DROP COLUMN digunakan untuk menghapus kolom yang tidak diperlukan lagi
pada table. Sebagai contoh untuk menghapus kolom job_id pada pada tabel dept di
atas.
- DROP TABLE
Sebagai contoh, jika kita ingin menghapus tabel dept, maka yang harus dilakukan
adalah :
- RENAME
View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil
query dari tabel-tabel dalam sebuah database. Syntax untuk melakuakn VIEW adalah :
<SQLQuery>
Contoh : view MahasiswaPria yang diambil dari tabel Mahasiswa di mana field JenisKel
= “L”. Syntax dari contoh tersebut adalah :
- CREATE TRIGGER
Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon
setiap kali terdapat proses modifikasi pada tabel. Proses modifikasi berupa: Insert,
Update dan delete. Syntax pembuatan Trigger:
AS <perintahSQL>