modul 1 sistem basis data
Post on 23-Oct-2015
87 Views
Preview:
DESCRIPTION
TRANSCRIPT
LAPORANPRAKTEK SISTEM BASIS DATA
Vina Novianty1106120
T. informatika B 2011
SEKOLAH TINGGI TEKNOLOGI GARUT2013/2014
BAB I
PENDAHULUAN
A. Latar Belakang
Pada masa sekarang ini, perkembangan teknologi semakin maju. Hal ini
membuktikan bahwa teknologi merupakan salah satu unsur yang peting dalam
kehidupan manusia. Untuk mengembangkan teknologi, memerlukan inovasi yang
baik dan implementasi yang tepat. Dimana, apa yang sudah di dapat tidak cukup
untuk diketahui saja. Perlu adanya penerapan dengan tujuan memahami dan dapat
menganalisa kembali apa yang sudah diterapkan.
Dengan adanya praktikum Sistem Basis Data ini, di harapkan mahasiswa
dapat menerapkan apa yang sudah di dapat dari dosen / instruktur di kelas. Bukan
hanya mengetahui tapi dapat menerapkan, memahami dan menganalisa kembali.
B. Tujuan Penulisan
1. Agar mahasiswa mampu menciptakan sebuah basis data, tabel, atribut-atribut
yang terkait dengan basis data tersebut
2. Agar mahasiswa mampu membuat user dan memberikannya hak akses untuk
seluruh atau pun hanya basis data tertentu saja.
BAB II
KAJIAN TEORI
A. Definis MySQL
MySQL merupakan sebuah Basis Data Server yang dapat berjalan pada
beberapa Sistem Operasi. Pada awalnya distro MySQL dikembangkan dan
dijalankan hanya pada Sistem Operasi LINUX saja, akan tetapi dengan
perkembangannya sekarang distro MySQL dapat juga dijalankan pada beberapa
Sistem Operasi seperti Windows, Solaris, dll.
Basis Data dengan nama MySQL atau dibaca (Mai Es Kiu El) ini dapat
memuat berpuluh-puluh bahkan beratus-ratus user untuk diolah di dalamnya.
Karena berupa Basis Data Server maka program ini telah memiliki sebuah sistem
keamanan yang dipercaya bagi para penggunanya. Basis Data MySQL memiliki
lisensi resmi dari GNU/GPL (General Public License), sebagai pengguna anda
dap menggunakannya secara bebas dan tanpa harus bayar.
Perintah yang digunakan dalam MySQL adalah perintah SQL (Structure
Query Language) yaitu berupa bahasa permintaan yang restruktur yang telah
distandarkan oleh pihak ANSI/ISO.
B. Elemen SQL
Elemen dasar SQL mencakup pernyataan, nama, tipe data, konstanta,
ekspresi, dan fungsi bawaan.
1. Pernyataan
Pernyataan adalah perintah SQL yang meminta sesuatu tindakan
kepada DBMS. SQL memiliki kira-kira 30 pernyataan. Beberapa pernyataan
dasar SQL dapat dilihat pada tabel berikut :
2. Nama
Nama digunakan sebagai identitas bagi objek-objek pada DBMS.
Contoh objek pada DBMS adalah tabel, kolom dan pengguna.
3. Tipe Data
Setiap data memiliki tipe data. Berikut adalah beberapa contoh tipe
data yang ada pada MySQL.
Tipe data numerik
Keterangan : Signed dan Unsigned adalah atribut untuk tipe data numerik
a. Signed : data yang disimpan dalam suatu kolom berupa data negatif maupun
positif.
b. Unsigned : digunakan agar data yang dimasukkan bukan data negatif (>=0).
Tipe data float tidak dapat dinyatakan dengan unsigned.
Tipe data string
Tipe data tanggal dan jam
4. Konstanta
Konstanta menyatakan nilai yang tetap.
5. Ekspresi
Ekspresi adalah segala sesuatu yang menghasilkan nilai. Ekspresi
digunakan untuk menghitung nilai.
Contoh : harga*jumlah+2
Simbol-simbol yang dapat digunakan pada ekspresi aritmatika.
6. Aggregate Funtions (fungsi agregat)
Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika
dipanggil. Fungsi agregat adalah fungsi standar di dalam SQL, suatu fungsi
yang digunakan untuk melakukan summary, fungsi statistik standar yang
dikenakan pada suatu tabel atau query.
a. AVG (ekspresi)
Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu
kolom dari suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG
umumnya adalah nama kolom. Kolom yang dicari nilai rata-ratanya adalah
kolom dengan tipe data numerik.
b. COUNT (x)
Fungsi ini digunakan untuk menghitung jumlah record (baris) dari
suatu kolom dari suatu tabel. X adalah nama kolom yang ingin dicari
jumlah barisnya.
c. MAX (ekspresi)
Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom
dari suatu tabel. Kolom yang dicari nilai terbesarnya memiliki tipe data
numerik.
d. MIN (ekspresi)
Fungsi ini digunakan untuk mencari nilai terkecil dari suatu kolom dari
suatu tabel. Kolom yang dicari nilai terkecilnya memiliki tipe data
numerik.
e. SUM (ekspresi)
Fungsi ini digunakan untuk mendapatkan nilai total dari suatu
kolom pada suatu tabel
C. DDL (Data Definition Language)
DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut basis data, tabel, atribut(kolom), batasan-batasan terhadap suatu
atribut, serta hubungan antar tabel. Yang termasuk dalam kelompok DDL ini
adalah CREATE, ALTER, dan DROP.
1. Membuat Database
Syntax :
namadatabase tidak boleh mengandung spasi dan tidak boleh memiliki
nama yang sama antar database. Berikut ini perintah untuk membuat database
dengan nama rental :
Syntax tambahan :
CREATE DATABASE namadatabase;
untuk menampilkan daftar nama database yang ada pada mysql
menggunakan perintah :
seperti berikut ini :
1. Menghapus Database
Syntax :
Database yang akan dihapus sesuai dengan namadatabase. Berikut ini
perintah untuk menghapus database dengan nama rental :
2. Membuat Tabel
Sebelum membuat suatu tabel, terlebih dahulu harus memilih salah satu
database sebagai database aktif yang akan digunakan untuk menyimpan tabel-
tabel dengan menggunakan syntax :
Berikut ini perintah untuk menggunakan database dengan nama rental :
Syntax membuat table :
SHOW DATABASES;
DROP DATABASE namadatabase;
USE namadatabase;
CREATE TABLE namatabel2 (Field1 TipeData1,Field2 TipeData2);
namatabel tidak boleh mengandung spasi (space). Field1 dan TipeData1
merupakan nama kolom pertama dan tipe data untuk kolom pertama. Jika ingin
membuat tabel dengan kolom lebih dari satu, maka setelah pendefinisian tipe data
sebelumnya diberikan tanda koma (,). Berikut ini perintah untuk membuat tabel
dengan nama jenisfilm :
Syntax tambahan :
Untuk menampilkan daftar nama tabel yang ada pada database yang
sedang aktif/digunakan (dalam hal ini database rental) :
seperti berikut ini :
Untuk menampilkan deskripsi tabel (dalam hal ini jenisfilm) syntaxnya adalah :
SHOW TABLES;
DESC namatabel;
3. Menghapus Tabel
Syntax :
Tabel yang akan dihapus sesuai dengan namatabel, berikut ini perintah
untuk menghapus tabel dengan nama jenisfilm :
4. Mendefinisikan null/not null Syntax :
5. Mendefinisikan Nilai Default
Nilai default adalah nilai yang otomatis diberikan oleh sistem untuk suatu
kolom ketika ada penambahan baris baru, sementara nilai pada kolom tersebut
tidak diisi oleh pengguna. Syntax :
nilai adalah nilai default dari kolom tersebut.
6. Mendefinisikan Primary Key Pada Tabel
DROP TABLE namatabel;
CREATE TABLE namatabel (Field1 TipeData1 NOT NULL,Field2 TipeData2);
CREATE TABLE namatabel (Field1 TipeData1,Field2 TipeData2 DEFAULT nilai);
Terdapat tiga cara untuk mendefinisikan primary key. Berikut ini adalah
Syntax mendefinisikan primary key untuk Field1
Atau
Atau
Berikut ini perintah untuk membuat tabel jenisfilm dengan kolom jenis
tipe datanya char(6), harga tipe datanya int dengan mendefinisikan nilai not null
dan primary key untuk kolom jenis serta nilai default untuk kolom harga :
atau
atau
7. Menghapus Primary Key Pada Tabel
Perintah :
CREATE TABLE namatabel (Field1 TipeData1 NOT NULL PRIMARY KEY,Field2 TipeData2);CREATE TABLE namatabel (Field1 TipeData1,Field2 TipeData2,PRIMARY KEY(Field1));
ALTER TABLE namatabel ADD CONSTRAINT namaconstraint PRIMARY KEY (namakolom);
Cara 1 :
Jika primary key dibuat dengan menggunakan alter table :
Cara 2 :
Jika primary key dibuat melalui create table :
Berikut ini perintah yang digunakan untuk menghapus primary key pada
tabel jenisfilm :
8. Menambah Kolom Baru Pada Tabel
Syntax :
namatabel adalah nama tabel yang akan ditambah fieldnya. Fieldbaru
adalah nama kolom yang akan ditambahkan, tipe adalah tipe data dari kolom yang
akan ditambahkan. Berikut ini perintah untuk menambah kolom keterangan
dengan tipe data varchar(25) :
9. Mengubah Tipe Data atau Lebar Kolom Pada Tabel
Perintah :
namatabel adalah nama tabel yang akan diubah tipe data atau lebar
kolomnya. Field adalah kolom yang akan diubah tipe data atau lebarnya. Tipe
adalah tipe data baru atau tipe data lama dengan lebar kolom yang berbeda.
ALTER TABLE namatabel DROP CONSTRAINT namaconstraint;
ALTER TABLE namatabel DROP PRIMARY KEY;
ALTER TABLE namatabel ADD fieldbaru tipe;
ALTER TABLE namatabel MODIFY COLUMN field tipe;
Berikut ini perintah untuk mengubah tipe data untuk kolom keterangan dengan
char(20) :
10. Mengubah Nama Kolom
Syntax :
namatabel adalah nama tabel yang akan diubah nama kolomnya,
namalamakolom adalah kolom yang akan diganti namanya, namabarukolom
adalah nama baru kolom, tipedatanya adalah tipe data dari kolom tersebut.
Berikut ini perintah untuk mengubah nama kolom keterangan menjadi ket :
11. Menghapus Kolom Pada Tabel
Syntax :
Berikut ini perintah untuk menghapus kolom ket pada tabel jenisfilm :
12. Mendefinisikan Foreign Key Pada Tabel
Untuk mendefinisikan foreign key, maka harus dipastikan bahwa tabel dan
atribut yang dirujuk (tabel induk dari foreign key) sudah didefinisikan terlebih
dahulu.
Syntax :
ALTER TABLE namatabel CHANGE COLUMN namalamakolom namabarukolom tipedatanya;
ALTER TABLE namatabel DROP COLUMN
CREATE TABLE namatabel (Field1 TipeData1,Field2 TipeData2,FOREIGN KEY (Field2) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION);
Atau
Berikut ini perintah untuk membuat tabel film beserta kolom-kolomnya
Atau
13. Menghapus Foreign Key
Perintah :
Berikut ini perintah untuk menghapus foreign key pada tabel film :
ALTER TABLE namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namakolom) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE namatabel DROP FOREIGN KEY
BAB III
STUDI KASUS
A. Basis Data Perpustakaan
Studi kasus yang hendak dipilih untuk memenuhi tugas praktikum basis data
mengenai Index dan Grand adalah studi kasus tentang basis data perpustakaan.
1. Buat Basis Data Perpustakaan
Syntax :
CREATE DATABASE db_perpustakaan;
Untuk melihat daftar basis data yang ada, bisa menggunakan perintah berikut :
2. Buat Tabel Buku
Sebelum membuat tabel Buku, gunakan perintah berikut dahulu untuk memilih
pada Basis Data mana Tabel Buku tersebut hendak dibuat.
USE db_perpustakaan;
CREATE TABLE data_buku (kode_buku char(5) PRIMARY KEY, nama_buku
varchar(50) NOT NULL, pengarang varchar(20), penerbit varchar(20),
tahun_terbit varchar(4));
3. Buat Tabel Anggota
CREATE TABLE data_anggota (no_anggota char(5) PRIMARY KEY,
nama_anggota varchar(30) NOT NULL, alamat varchar(20), no_telp varchar(12)
NOT NULL);
K
4. Buat Tabel Peminjaman
CREATE TABLE pinjam (no_trans varchar(10) PRIMARY KEY, no_anggota
char(5) NOT NULL, kode_buku char(5) NOT NULL, tgl_pinjam date NOT
NULL, lama_pinjam int NOT NULL, tgl_pengembalian date NOT NULL, denda
int NOT NULL, ket varchar(20), FOREIGN KEY(no_anggota) REFERENCES
data_anggota(no_anggota) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY(kode_buku) REFERENCES data_buku(kode_buku) ON
UPDATE CASCADE ON DELETE CASCADE);
Untuk melihat Tabel apa saja yang terdapat pada Basis Data db_perpustakaan
dapat digunakan perintah berikut :
SHOW TABLES;
Untuk melihat rincian masing-masing Tabel dapat digunakan perintah berikut :
DESC NamaTabel;
5. Membuat INDEX Pada Ketiga Tabel Di Atas
a. Membuat INDEX pada Tabel data_anggota
CREATE INDEX index_nama_anggota ON data_anggota(nama_anggota(5));
b. Membuat INDEX pada Tabel data_buku
CREATE INDEX index_nama_buku ON data_buku(nama_buku(5));
c. Membuat INDEX pada Tabel pinjam
CREATE INDEX index_no_trans ON pinjam(no_trans(10));
6. Membuat USER dan GRANT untuk Basis Data db_perpustakaan
Di sini akan dibuat dua buah USER, ada USER untuk Administrator dan
USER untuk GUEST. Perbedaannya adalah USER untuk Administrator diberi hak
penuh untuk melakukan apapun pada Basis Data db_perpustakaan sedangkan
USER GUEST hanya diberi hak untuk melihat saja isi yang ada pada Basis Data
db_perpustakaan.
a. Membuat USER untuk Tamu/Pengunjung
CREATE USER ‘tama’@’localhost’;
Membuat akses/GRANT untuk USER Tamu
GRANT SELECT ON db_perpustakaan.* TO ‘tamu’@’localhost’;
b. Membuat USER untuk Administrator
CREATE USER ‘vier’@’localhost’ identified by ‘vierforever’;
GRANT ALL PRIVILEGES ON db_perpustakaan.* TO ‘vier’@’localhost’
identified by ‘vierforever’;
Untuk cek apakah USER tersebut memiliki hak akses secara penuh atau hanya
sebagian bisa dilakukan percobaan sebagai berikut :
a. Untuk USER Tamu/Pengunjung
1. Login MySQL dengan username ‘tamu’ tanpa password
2. Gunakan Basis Data yang telah diberi USER tersebut yaitu Basis Data
db_perpustakaan
3. Lakukan perintah untuk menghapus, mengubah atau apapun selain
perintah SELECT. Salah satu contoh, penulis mencoba untuk
menghapus Tabel data_buku, maka yang terjadi seperti gambar
dibawah ini :
Artinya jika kita login dengan menggunakan USER Tamu, maka hak
akses yang diberikan hanyalah perintah SELECT saja, seperti gambar
dibawah ini :
Karena isi dari Tabel data_buku kosong, maka yang ditampilkan hanya
seperti itu saja. Selain itu kita hanya bisa menggunakan atau memilih
Basis Data db_perpustakaan saja jika kita menggunakan USER tamu
tersebut.
b. Untuk USER Administrator
USER Administrator adalah USER yang diberi hak penuh untuk
melakukan apapun pada Basis Data, pada kasus ini Basis Data
db_perpustakaan. USER Administrator ini memiliki username vier dan
password vierforever sesuai dengan yang dibuat di atas.
1. Login dengan USER Administrator, username vier password
vierforever
2. Gunakan Basis Data db_perpustakaan dengan menggunakan perintah
berikut :
USE db_perpustakaan;
3. Lakukan perintah apapun pada Basis Data tersebut, dalam kasus ini
adalah dengan menghapus Tabel pinjam seperti gambar berikut :
Jika perintah di atas berhasil dilakukan maka pembuatan USER
Administrator telah berhasil. Perintah-perintah lain pun bisa anda coba
pada Basis Data db_perpustakaan. Hanya Basis Data db_perpustakaan
saja yang bisa dipilih jika login menggunakan USER Administrator ini
dengan username vier dan password vierforever.
BAB IV
PENUTUP
A. Kesimpulan
Dari pembahasan di atas, dapat ditarik beberapa kesimpulan di antarnya
sebagai berikut :
1. CREATE
Perintah tersebut dapat digunakan untuk proses pembuatan DATABASE,
TABLE, INDEX, USER, Maupun yang lainnya yang terdapat dalam MySQL.
2. ALTER
Perintah tersebut mirip seperti fungsi edit (ubah) yaitu di dalamnya terdapat
proses DELETE dan ADD/CREATE di mana ALTER ini digunakan untuk
mengubah hal-hal yang berkaitan dengan Struktur Tabel.
3. DROP/DELETE
Perintah ini digunakan untuk menghapus DATABASE, TABLE, USER,
INDEX maupun yang lainnya yang terdapat dalam MySQL.
4. GRANT
Perintah ini digunakan untuk memberikan Hak Akses kepada USER bagian
secara penuh ataupun sebagian.
B. Referensi
1. Modul Sistem Basis Data.
top related