BASIS DATA
“DATABASE MySQL”
Dosen Pengampu :
Andriani Putri, S.Kom., M.Sc
Di Susun Oleh :
Ari Alfiandi (2105903040091)
Puji syukur kehadirat Allah SWT karena atas rahmat-Nya penulis dapat
menyelesaikan Laporan Praktikum Basis Data. Pada laporan ini akan dilampirkan hasil dari
program MySQL yang telah dibuat oleh penulis yaitu sebagai “Laporan Praktikum 04
Basis Data MySQL”
Penulis meminta maaf atas berbagai kesalahan dan kekurangan yang terdapat pada
laporan ini. Sebelum itu, pada kesempatan kali ini penulis ingin mengucapkan Terimakasih
kepada Dosen Pengampu mata kuliah Basis Data Universitas Teuku Umar yaitu ibuk
“Andriani Putri, S.Kom., M.Sc”.
Semoga laporan ini bisa menambah wawasan para pembaca dan bisa bermanfaat
untuk perkembangan dan peningkatan ilmu pengetahuan.
i
DAFTAR ISI
KATA PENGANTAR..............................................................................................................................i
DAFTAR ISI...........................................................................................................................................ii
DAFTAR GAMBAR..............................................................................................................................iii
BAB I PENDAHULUAN........................................................................................................................1
1.1 Latar Belakang...............................................................................................................................1
1.2 Rumusan Masalah..........................................................................................................................1
1.3 Tujuan Laporan..............................................................................................................................1
BAB II LANDASAN TEORI..................................................................................................................2
2.1. Data Base......................................................................................................................................2
2.2. SQL (Structured Query Language)...............................................................................................2
2.3 MySQL..........................................................................................................................................2
2.3.1 Tipe Data MySQL..................................................................................................................3
2.3.2 Tipe data numerik antara lain :...............................................................................................3
2.3.3 Tipe data String antara lain :...................................................................................................4
2.4. Jenis-jenis Constraint....................................................................................................................4
2.5 Pengertian Auto Increment............................................................................................................5
BAB III METODELOGI PRAKTIKUM................................................................................................6
3.1 Metode Praktikum..........................................................................................................................6
BAB IV PEMBAHASAN.......................................................................................................................7
4.1 Pembahasan...................................................................................................................................7
4.1.1 Programnya.............................................................................................................................7
4.1.2 Latihan 1................................................................................................................................8
4.1.3 Latihan 2...............................................................................................................................11
4.1.4 Latihan 3...............................................................................................................................11
4.2 Hasil Tangkapan Layar Programnya..........................................................................................12
BAB V PENUTUP................................................................................................................................17
5.1 Kesimpulan..................................................................................................................................17
DAFTAR PUSTAKA............................................................................................................................18
ii
DAFTAR GAMBAR
iii
BAB I
PENDAHULUAN
1
BAB II
LANDASAN TEORI
2.3 MySQL
MySQL adalah relational database management system (RDBS) berbasis SQL
(Structured Query Language). RDBMS RDBMS adalah kependekan dari Relational Database
Management System. RDBMS adalah program yang melayani sistem basis data yang entitas
utamanya terdiri dari tabel-tabel yang mempunyai relasi dari satu tabel ke tabel yang lain.
Suatu database terdiri dari banyak tabel. Tabel ini terdiri dari banyak field yang
merupakan kolomnya. Isi tiap baris dari tabel inilah merupakan data. Untuk membuat sistem
basis data yang terintegrasi maka antara satu tabel dengan tabel lain mempunyai hubungan
yang harus selalu diperlihara. Setiap tabel mempunyai sebuah primary key, primary key ini
kemudian dihubungkan dengan tabel kedua dan menjadi foreign key untuk tabel kedua ini.
Dengan relational database ini maka data akan secara konsisten disimpan di suatu
tabel, kemudian tabel lain yang membutuhkan data lainnya tinggal menghubungkan melalui
foreign key.
Sebagai contoh adalah database akademik yang terdiri tabel_mahasiswa. Field dari
tabel_mahasiswa adalah No, nim, nama, alamat, jenis kelamin, dan telepon.
Berbagai macam relasi dalam database
one-to-one
one-to-many
many-to-many
2
2.3.1 Tipe Data MySQL
· 1. Char
Tipe data ini digunakan untuk menyimpan data string dengan jumlah karakter
tertentu. Panjang maksimum karakter tipe data Char harus dinyatakan secara eksplisit seperti
contoh berikut: Judul CHAR(50)
· 2. Varchar
Tipe data ini cocok digunakan untuk menyimpan data string dengan panjang yang
bervariasi. Sama seperti tipe data Char, panjang maksimum karakter yang akan ditampung
dalam field harus dinyatakan Tipe Data. Beberapa jenis tipe data dalam MySQL memiliki
tipe tersendiri dalam tiap field di table databasenya.
Perintah dari SQL yang digunakan untuk meminta sebuah tindakan kepada DBMS.
Pernyataan dasar SQL antara lain :
- ALTER : Merubah struktur tabel
- COMMIT : Mengakhiri eksekusi transaksi
- RENAME: Perintah rename digunakan untuk mengubah nama table
- CREATE : Membuat tabel, indeks
- DELETE : Menghapus baris pada sebuah tabel
- DROP : Menghapus tabel, indeks
- GRANT : Menugaskan hak terhadap basis data kepada user
- INSERT : Menambah baris pada tabel
- REVOKE : Membatalkan hak kepada basis data
- ROLLBACK : Mengembalikan pada keadaan semula apabila transaksi gagal dilaksanakan
- SELECT : Memilih baris dan kolom pada sebuah tabel
- UPDATE : Mengubah value pada baris sebuah tabel
3
2.3.3 Tipe data String antara lain :
CHAR : Karakter yang memiliki panjang tetap yaitu sebanyakn
VARCHAR : Karakter yang memiliki panjang tidak tetap yaitu maksimum
TINYBLOB : BLOB dengan ukuran sangat kecil
BLOB : BLOB yang memiliki ukuran kecil
MEDIUMBLOB : BLOB yang memiliki ukuran sedang
LONGBLOB : BLOB yang memiliki ukuran besar
TINYTEXT : teks dengan ukuran sangat kecil
TEXT : teks yang memiliki ukuran kecil
MEDIUMTEXT : teks yang memiliki ukuran sedang
LONGTEXT : teks yang memiliki ukuran besar
ENUM : kolom diisi dengan satu member enumerasi
SET : Kolom dapat diisi dengan beberapa nilai anggota.
NOT NULL yang berarti tidak ada nilai NULL yang terkandung dalam kolom.
Batasan ini menentukan bahwa kolom tidak boleh memiliki NULL atau nilai kosong
UNIQUE yang berarti setiap baris dalam kolom tertentu membutuhkan nilai yang
unik. Constraint ini memastikan bahwa semua nilai yang dimasukkan ke dalam kolom
akan menjadi unik. Hal ini berarti kolom tidak dapat menyimpan nilai duplikat. SQL
memungkinkan kita untuk menggunakan lebih dari satu kolom dengan batasan UNIK
dalam sebuah tabel.
PRIMARY KEY yang merupakan kombinasi UNIQUE dan NOT NULL: kolom
harus memiliki identitas yang unik. Constraint ini digunakan untuk mengidentifikasi
setiap record dalam tabel secara unik. Jika kolom berisi batasan kunci utama, maka
tidak boleh kosong. Tabel ini mungkin memiliki kolom duplikat, tetapi hanya dapat
berisi satu kunci utama. Hal tersebut selalu berisi nilai unik ke dalam kolom.
FOREIGN KEY yang berarti integritas referensial SQL satu tabel cocok dengan tabel
lain. Batasan ini digunakan untuk menghubungkan dua tabel bersama-sama. Ini juga
dikenal sebagai kunci referensi. Kolom kunci asing cocok dengan bidang kunci utama
dari tabel lain. Ini berarti bidang kunci asing dalam satu tabel mengacu pada bidang
kunci utama dari tabel lain.
CHECK yang berarti kondisi yang ditentukan terpenuhi dalam nilai. Hal ini
memastikan bahwa nilai yang dimasukkan dalam kolom harus dipenuhi dengan
kondisi yang diberikan. Dengan kata lain, foreign key menentukan apakah nilai yang
terkait dengan kolom itu valid atau tidak dengan kondisi yang diberikan.
DEFAULT yang merupakan nilai kolom stock. Constraint ini digunakan untuk
menyetel nilai default untuk kolom tertentu di mana kami belum menentukan nilai apa
pun. Artinya kolom tersebut harus berisi nilai, termasuk NULL. Constraint ini
mengontrol nilai dalam kolom tertentu.
4
2.5 Pengertian Auto Increment
Auto increment field pada MySQL adalah suatu tipe field integer yang secara
otomatis akan bertambah nilainya jika terjadi penambahan row pada table dimana field
tersebut berada.
Pada saat kita memasukkan data baik melalui stement INSERT maupun melalui
mekanisme data access lainnya, field tersebut tidak perlu dimasukkan nilainya atau cukup
diberi nilai NULL, maka MySQL akan menentukan sendiri nilai apa yang akan diberikan
sebagai akibat penambahan baris data tersebut.
Definisi Auto Increment Field
Untuk menambahkan atau merubah suatu field sebagai auto increment, berikut adalah
beberapa aturannya :
Primary key sangat penting untuk menandai field yang penting.
menambahkan keyword AUTO_INCREMENT pada definisi field.
harus bertipe numerik (TINYINT, INT, FLOAT, DECIMAL, dan lain-lain).
hanya boleh ada satu field auto increment pada suatu table, tidak bisa lebih.
5
BAB III
METODELOGI PRAKTIKUM
6
BAB IV
PEMBAHASAN
4.1 Pembahasan
Dalam laporan ini membahas tentang project database dengan langkah-langkah soal
yang diberikan, beserta bukti tangkapan layar projectnya.
Satu hal yang perlu diingat bahwa setiap penulisan script di MySQL Command Line
Client – Unicode harus selalu diakhiri dengan tanda titik koma (;). Di dalam source MySQL
yang telah terinstal secara default telah terisi sebuah database yang bernama mysql dan sys .
Untuk dapat menampilkan apa saja nama database yang telah ada maupun yang akan kita
buat, mengunakan syntak berikut:
4.1.1 Programnya
mysql> create database laporan04basisdata;
Query OK, 1 row affected (0.01 sec)
//yaitu syntax di atas untuk membuat sebuah nama database baru.
7
// Perintah syntax use laporan04basisdata; untuk memilih salah satu dari database 12 kolom
tersebut
4.1.2 Latihan 1
Pada latihan 1 ini adalah membuat sebuah field kembali pada modul praktikum 3 yang
berisi filed no,nama,jk,alamat,kdpos, dan email. Kemudian memasukkan lagi minimal 10
data baru. Dengan contoh pada Modul Praktikum 4, dengan nama tabel buku_alamat.
mysql> create table buku_alamat
-> (No int(3) not null,
-> Nama varchar(25) not null,
-> Jk char(1),
-> Alamat varchar(50),
-> Kdpos char(5),
-> Email varchar(30) not null,
-> Primary key (No));
Query OK, 0 rows affected, 1 warning (0.01 sec)
//Perintah syntax create table buku_alamat adalah membuat nama sebuah tabel dan
juga membuat sebuah isi didalam kolom.
1. (no int not null, adalah membuat isi table field pada Nomor di bagian
Constraint Null langsung menjadi NO karena ada syntax not null
2. nama varchar(25)not null, adalah membuat isi table field pada Nama di bagian
Constraint Null langsung menjadi NO karena ada syntax not null
3. Syntax Selanjutnya dalam membuat isi table pada field berupa JK, Alamat, Kdpos, dan
Email adalah tidak membuat NO pada bagian Constraint Null, maka tidak perlu syntax not
null.
4. Pada bagian syntax primary key (no) adalah untuk membuat isi table field pada Nomor
di bagian Constraint Key, menjadi PRI.
5. Perlu di garis bawahi bahwa, ketika sudah membuat semua isi table baik itu Field maupun
Constraint, maka harus tutup kurung dan titik koma “);”
8
mysql> alter table buku_alamat modify no int(3)
auto_increment,auto_increment=1;
Query OK, 0 rows affected, 1 warning (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 1
//Syntax diatas adalah perubahan field NO pada constraint Extra menjadi auto_increment.
9
mysql> desc buku_alamat;
//Perintah syntax desc buku_alamat; adalah untuk memunculkan tabel yang sudah di buat
diatas.
Berikut hasil table tampilannya:
+----------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+----------------+
| no | int | NO | PRI | NULL | auto_increment |
| Nama | varchar(25) | NO | | NULL | |
| Jk | char(1) | YES | | NULL | |
| Alamat | varchar(50) | YES | | NULL | |
| Kdpos | char(5) | YES | | 11111 | |
| Email | varchar(30) | NO | | NULL | |
| Agama | varchar(30) | YES | | NULL | |
| Status | varchar(50) | YES | | NULL | |
| Alumni | varchar(60) | YES | | NULL | |
| Nama_Ayah | varchar(30) | YES | | NULL | |
| Pekerjaan_Ayah | varchar(50) | YES | | NULL | |
| Nama_Ibu | varchar(30) | YES | | NULL | |
| Pekerjaan_Ibu | varchar(50) | YES | | NULL | |
| Provinsi | varchar(50) | YES | | NULL | |
| Kabupaten | varchar(50) | YES | | NULL | |
| Kecamatan | varchar(50) | YES | | NULL | |
+----------------+-------------+------+-----+---------+----------------+
16 rows in set (0.00 sec)
10
Menambahkan lagi Baris ke-2 pada field/kolom
4.1.3 Latihan 2
Pada latihan 2 ini adalah mengubah record dengan menggunakan perintah update sesuai
dengan Modul Praktikum 04, yaitu perubahan pada tabel yang sudah dibuat pada Latihan 1.
4.1.4 Latihan 3
11
mysql> select*from buku_alamat;
// Perintah syntax diatas adalah untuk menampilkan data tabel yang sudah di buat diatas.
Berikut isi Data tabel tampilannya:
12
Gambar 4 Membuat Isi Tabel
13
Gambar 8 Menampilkan Hasil Tabel Kedua Perubahan
14
BAB V
PENUTUP
5.1 Kesimpulan
Kesimpulan Basis data atau juga disebut database artinya berbasiskan pada data,
tetapi secara konseptual, database diartikan sebuah koleksi atau kumpulan data-data yang
saling berhubungan (relation), disusun menurut aturan tertentu secara logis, sehingga
menghasilkan informasi. Untuk mengelola dan memanggil query basis data agar dapat
disajikan dalam berbagai bentuk yang diinginkan dibutuhkan perangkat lunak yang disebut
Sistem Manajemen Basis Data atau juga disebut Database Management System (DBMS).
Istilah-istilah dalam basis data juga seyogyanya kita tahu, yaitu: enterprise, entitas,
atribut, nilai data, kunci elemen data, record data. Menurut ANSI/SPARC, arsitektur basis
data terbagi atas tiga level yaitu: Internal/Physical Level, External/View Level,
Conceptual/Logical Level. Tujuan utama dari arsitektur 3 level tersebut adalah untuk
menyediakan data independence yang terbagi 2: Logical Data Independence (kebebasan data
secara logika) dan Physical Data Independence (kebebasan data secara fisik).
15
DAFTAR PUSTAKA
16