Laporan Praktikum Basis Data Modul II-Primary Key

29
BAB I PENDAHULUAN 1.1 Pendefinisian Primary Key Primary key adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel. Nilai dari primary key adalah unik. Primary Key adalah field kunci atau utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang sama,atau dengan kata lain Primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).. 1.2 Membuat Primary Key Untuk membuat sebuah kunci primer hanya boleh membuatnya sekali. Jadi, kunci primer sebenarnya diciptakan untuk menjadi kolom utama sebuah tabel. Dengan demikian data pada kolom kunci utama tidak mungkin kembar. Hal ini terjadi karena ketika memasukkan data yang sama, proses tersebut akan ditolak oleh database . Seperti yang telah diungkap di atas, kondisi adanya data kembar dikenal dengan istilah redudansi data. Syarat utama untuk menciptakan kunci primer adalah kolom tersebut tidak boleh kosong atau diset dengan 1

Transcript of Laporan Praktikum Basis Data Modul II-Primary Key

Page 1: Laporan Praktikum Basis Data Modul II-Primary Key

BAB I

PENDAHULUAN

1.1 Pendefinisian Primary Key

Primary key adalah suatu nilai dalam basis data yang digunakan untuk

mengidentifikasi suatu baris dalam tabel. Nilai dari primary key adalah unik.

Primary Key adalah field kunci atau utama dari suatu tabel yang menunjukkan

bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang

sama,atau dengan kata lain Primary key menjadikan tiap record memiliki

identitas sendiri-sendiri yang membedakan satu sama lainnya (unik)..

1.2 Membuat Primary Key

Untuk membuat sebuah kunci primer hanya boleh membuatnya sekali.

Jadi, kunci primer sebenarnya diciptakan untuk menjadi kolom utama sebuah

tabel. Dengan demikian data pada kolom kunci utama tidak mungkin kembar. Hal

ini terjadi karena ketika memasukkan data yang sama, proses tersebut akan ditolak

oleh database. Seperti yang telah diungkap di atas, kondisi adanya data kembar

dikenal dengan istilah redudansi data.

Syarat utama untuk menciptakan kunci primer adalah kolom tersebut tidak

boleh kosong atau diset dengan nilai not null. Berikut ini adalah contoh penulisan

syntax dari primary key:

CREATE TABLE nama_table ( Kolom_primer type (lenght) NOT NULL, Kolom_2 type (lenght), ............................ PRIMARY KEY (kolom_primer));

1.3 Pendefinisian Kolom Unik

Kolom unik atau unique adalah sebuah bentuk kolom yang tidak

mengizinkan adanya data kembar, apabila pada proses input, didapati data kembar

proses tersebut akan dinyatakan gagal atau ditolak oleh database. Kolom unik

1

Page 2: Laporan Praktikum Basis Data Modul II-Primary Key

sebenarnya memiliki prinsip serupa dengan primary key, yaitu data tidak kembar.

Selain itu dalam satu tabel dapat dibentuk lebih dari satu, baik kunci primer

maupun kolom unik. Perbedaan antara primay key dan unique adalah bahwa kunci

primer akan selalu menjadi kunci utama.

1.4 Menciptakan Kolom Unik

Pada kunci unik, kolom harus didefinisikan dengan NOT NULL. Untuk

membentuk kolom unik dapa digunakan perintah unique. Berikut contoh

penulisan syntax pada unique:

Create teble nama_tabel ( Kolom_uniq type (lenght) not null, Kolom_2 type (lenght),

......................... Unique (kolom_uniq));

1.5 Pendefinisian Auto Increment

A uto increment yaitu penambahan automatis yang dilakukan adalah

penambahan yang sifatnya berurutan dari kecil menjadi besar. Metode

penambahan automatis seperti ini biasanya digunakan untuk mendefinisikan

sebuah kode berupa kunci utama seperti nomor record atau nomor urut pada baris

tabel.

1.6 Menciptakan Auto Increment

Selanjutnya adakalanya kita ingin menciptakan sebuah kolom yang dapat

merekam data. Kolom dengan kemampuan tersebut dapat kita ciptakan dengan

metode auto increment.

Berikut adalah contoh penulisan syntax pada auto increment :

CREATE TABLE nama_tabel( Kolom_primer type (lenght)NOT NULL AUTO_INCREMENT,

Kolom_2 type (lenght), ..........................

PRIMARY KEY (kolom_primer));

2

Page 3: Laporan Praktikum Basis Data Modul II-Primary Key

BAB II

DESKRIPSI KERJA

Terdapat sebuah kasus yang harus diselesaikan oleh praktikan yaitu untuk

membuat dua buah database sederhana. Menciptakan database yang mana

dicantumkan primary key , unique, a uto increment , u nsigned zerofill . Untuk

menyelesaikan kasus tersebut, praktikan menggunakan software Apache2Triad

yang dilengkapi dengan bahasa MySQL. Adapun langkah-langkah yang

dilakukan oleh praktikan adalah sebagai berikut:

1. Aktifkan atau start MySQL pada DOS PROMPT di direktori

c:/Apache2Triad/mysql/bin/mysql lalu tekan enter. Maka akan didapat screen

seperti gambar di bawah ini :

Gambar 2.1 Tampilan MySQL

2. Buat database baru dengan nama pengajaran. Ketikan “create database

pengajaran;” seperti gambar di bawah ini :

Gambar 2.2 Pembuatan database pengajaran

3. Untuk menampilkan database ketikkan “show databases;” seperti gambar di

bawah ini : :

Gambar 2.3 Menampilkan semua database yang ada

3

Page 4: Laporan Praktikum Basis Data Modul II-Primary Key

4. Sebelum membuat sebuah tabel, aktifkan database yang akan kita gunakan

untuk mendukung pembuatan tabel. Lihat gambar di bawah ini :

Gambar 2.4 Mengaktifkan database pengajaran, sekaligus masuk ke dalam

database tersebut

5. Setelah masuk ke dalam database, buatlah sebuah tabel dosen dengan

menggunakan query “create table dosen” seperti gambar di bawah ini :

Gambar 2.5 Pembuatan tabel pegawai

6. Untuk menampilkan tabel. Gunakan query seperti pada gambar di bawah ini :

Gambar 2.6 Menampilkan tabel yang telah dibuat

7. Untuk menampilkan struktur tabel. Gunakan guery pada gambar di bawah

ini :

Gambar 2.7 Melihat struktur tabel dosen

8. Setelah berhasil membuat tabel dosen, selanjutnya praktikkan akan

memasukkan data ke dalam tabel dosen tersebut. Berikut query yang

digunakan seperti pada gambar di bawah ini :

4

Page 5: Laporan Praktikum Basis Data Modul II-Primary Key

Gambar 2.8 Memasukkan data ke dalam tabel dosen

9. Untuk menampilkan struktur tabel dosen yang telah di dimasukkan sebuah

data kedalamnya maka gunakan query seperti pada gambar di bawah ini :

Gambar 2.9 Melihat struktur tabel pegawai yang telah di masukkan data

10. Buat tabel kedua dengan nama “mata_kuliah” menggunakan query “create

table mata_kuliah (Kd_MK int(2) not null auto_increment, Nama_MK

varchar(30) not null, Sks char(1) not null, semester char(10) not null, jenis

varchar(10) null, primary key(Kode_MK));” dan tampilkan tabelnya dengan

menggunakan query “show tables;’’ seperti terlihat pada gambar di bawah ini :

Gambar 2.10 Membuat dan menampilkan tabel mata kuliah

5

Page 6: Laporan Praktikum Basis Data Modul II-Primary Key

11. Untuk menampilkan struktur tabel. Gunakan guery seperti pada gambar di

bawah ini :

Gambar 2.11 Melihat struktur tabel mata kuliah yang belum terisi data

12. Setelah berhasil membuat tabel kedua yang bernama mata kuliah, selanjutnya

praktikkan akan memasukkan data ke dalam tabel mata kuliah tersebut.

Berikut query yang digunakan seperti pada gambar di bawah ini :

Gambar 2.12 Memasukkan data ke dalam tabel mata kuliah

13. Untuk menampilkan struktur tabel mata kuliah yang telah di dimasukkan

sebuah data kedalamnya maka gunakan query seperti pada gambar di bawah

ini :

Gambar 2.13 Melihat struktur tabel pegawai yang telah di masukkan data

6

Page 7: Laporan Praktikum Basis Data Modul II-Primary Key

14. Buat database baru yang kedua dengan nama kuliah. Ketikan “create database

kuliah;” seperti gambar di bawah ini :

Gambar 2.14 Membuat databse kedua dengan nama kuliah

15. Untuk menampilkan database yang telah dibuat ketikkan “show databases;”

seperti gambar di bawah ini :

Gambar 2.15 Menampilkan keseluruhan database yang telah dibuat

16. Sebelum membuat sebuah tabel, aktifkan database yang akan kita gunakan

untuk mendukung pembuatan tabel selanjutnya. Lihat gambar di bawah ini :

Gambar 2.16 Mengaktifkan database pengajaran, sekaligus masuk ke dalam

database tersebut

17. Setelah masuk ke dalam database, buatlah sebuah tabel “mahasiswa” dengan

menggunakan query “create table mahasiswa” seperti gambar di bawah ini :

Gambar 2.17 Membuat tabel mahasiswa

18. Untuk menampilkan tabel. Gunakan query seperti pada gambar di bawah ini :

Gambar 2.18 Menampilkan tabel yang telah dibuat

7

Page 8: Laporan Praktikum Basis Data Modul II-Primary Key

19. Untuk menampilkan struktur tabel mahasiswa. Gunakan guery seperti pada

gambar di bawah ini :

Gambar 2.19 Melihat struktur tabel mahasiswa

20. Setelah berhasil membuat tabel kedua yang bernama mahasiswa, selanjutnya

praktikkan akan memasukkan data ke dalam tabel mahasiswa tersebut. Berikut

query yang digunakan seperti pada gambar di bawah ini :

Gambar 2.20 Memasukkan data ke dalam tabel mahasiswa

21. Untuk menampilkan struktur tabel mahasiswa yang telah di dimasukkan

sebuah data kedalamnya maka gunakan query pada gambar di bawah ini :

Gambar 2.21 Melihat struktur tabel mahasiswa yang telah di masukkan data

8

Page 9: Laporan Praktikum Basis Data Modul II-Primary Key

22. Buat tabel kedua dengan nama “profile_mahasiswa” menggunakan query

“create table profile_mahasiswa” dan tampilkan tabelnya dengan

menggunakan query “show tables;’’ seperti pada gambar di bawah ini :

Gambar 2.22 Membuat dan menampilkan tabel profile mahasiswa

23. Setelah berhasil membuat tabel kedua yang bernama profile mahasiswa,

selanjutnya praktikkan akan memasukkan data ke dalam tabel. Berikut query

yang digunakan seperti pada gambar di bawah ini :

Gambar 2.23 Memasukkan data ke dalam tabel profile mahasiswa

24. Untuk menampilkan struktur tabel profile mahasiswa yang telah di

dimasukkan sebuah data kedalamnya maka gunakan query pada gambar di

bawah ini :

Gambar 2.24 Melihat struktur tabel mahasiswa yang telah di masukkan data

9

Page 10: Laporan Praktikum Basis Data Modul II-Primary Key

BAB III

PEMBAHASAN

Dari hasil pemaparan deskripsi kerja pada bab II diatas, berikut adalah

query yang digunakan dalam MySQL untuk membentuk database dengan

primary key :

1.

Ini merupakan query yang digunakan untuk membuat database baru,

database pertama yang akan praktikkan buat yaitu database pengajaran. Pada

gambar di atas, Query OK menyatakan bahwa pembuatan database dengan

nama pengajaran dinyatakan OK atau berhasil dibuat, sehingga apabila menengok

direktori data pada server MySQL akan ditemukan sebuah direktori baru dengan

nama pengajaran.

2.

Perintah show databases ini digunakan untuk menampilkan database apa

saja yang terdapat dalam software MySQL, dibawah ini adalah beberapa database

yang telah dibuat, untuk mengetahui berapa banyak database yang ada maka

dapat di ketahui dari angka yang terletak di bagian kiri sebelah bawah.

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| pelanggan |

| pengajaran |

| perpustakaan |

| pusda |

| showroom_mobil |

| toko_mitra |

10

mysql> create database pengajaran ;

Query OK, 1 row affected (0.02 sec)

mysql> show databases ;

Page 11: Laporan Praktikum Basis Data Modul II-Primary Key

+--------------------+

8 rows in set (0.07 sec)

Maka dapat diketahui bahwa dalam direktori data praktikkan ada delapan

buah database yang telah dibuat saat itu.

3.

Perintah use pengajaran digunakan untuk masuk kedalam database

pengajaran dan menggunakannya sehingga praktikkan dapat mengolah database

pengajaran tersebut. Pada syntax di atas use bermakna menggunakan atau

membuka.

4. mysql> create table dosen(

-> kd_dosen int(5)unsigned zerofill not null auto_increment,

-> nama_dosen varchar(30) not null,

-> alamat_dosen varchar(60)not null,

-> no_hp char(15) not null,

-> email char(15) null,

-> primary key (kd_dosen));

Query OK, 0 rows affected (0.10 sec)

Perintah “create table dosen” merupakan syntax yang digunakan untuk

menciptakan tabel baru dengan nama dosen, table dosen ini berisi field kode

dosen yang memiliki tipe data int dan terdiri dari 10 5 bilangan. Field nama

dosen dan alamat dosen menggunakan tipe data varchar digunakan untuk

menyatakan data teks tetapi digunakan untuk data yang memiliki panjang

karakter yang berbeda-beda. Field nomor handphone dan email menggunakan

tipe data char. Sistem MySQL akan menampilkan tanda panah '->' yang

menyatakan bahwa perintah MySQL tersebut dianggap belum selesai (karena

belum diakhiri dengan tanda titik- koma ';').

Pada pembuatan komponen-komponen yang ada ditabel diharuskan untuk

bervariasi seperti not null dan null. Jika atribut zerofill disertakan, MySQL akan

11

mysql> use pengajaran ;

Database changed

Page 12: Laporan Praktikum Basis Data Modul II-Primary Key

otomatis menambahkan atribut unsigned. Unsigned adalah bilangan tanpa tanda

di depannya (misalnya tanda negatif). Dapat dilihat gambar di bawah ini

bahwasannya not null dan null saling mengisi agar primary key dapat diterima

oleh database. Selanjutnya nomor dibagian paling bawah digunakan sebagai

primary key. alasannya karena disini praktikan menggunakan angka sehingga

angka di nomor tersebut tidak dapat digandakan dan hanya dapat digunakan

sebanyak satu kali.

5. mysql> show tables;

+----------------------+

| Tables_in_pengajaran |

+----------------------+

|dosen |

+----------------------+

1 row in set (0.00 sec)

Perintah show tables digunakan untuk menampilkan tabel apa saja yang

terdapat dalam database. Setelah syntax di jalankan hasilnya yaitu tabel dosen

terdapat pada database pengajaran.

6.

Gambar 3.1 Melihat struktur tabel dosen

Selanjutnya praktikan mendesc table yang telah dibuat yang berfungsi

melihat tipe data dan panjang rekaman dengan cara menampilkan struktur data

pada tabel tersebut. Dalam bahasa basis data, field yang diisi data tak boleh

kosong disebut NOT NULL sedangkan field boleh kosong biasa disebut dengan

istilah NULL YES. Seperti hasil diatas, semua field dalam tabel dosen, kolomnya

boleh tidak boleh kosong kecuali kolom email. Seperti yang terpampang gambar

di bawah ini, terlihat pada bagian kolom default untuk kode dosen dan email

bertuliskan null. Yang mana intinya data yang praktikkan masukkan secara

otomatis dapat dibaca oleh sistem sesuai apa yang diinginkan ketika lupa

12

Page 13: Laporan Praktikum Basis Data Modul II-Primary Key

memasukkan input tersebut. Pada tabel di atas yang menjadi kolom utama yaitu

kolom kode dosen karena di deklarasikan sebagai kunci primer.

7.

Gambar 3.2 Memasukkan sejumlah data ke dalam tabel dosen dan menampilkan struktur tabelnya

Pada gambar di atas, praktikkan menginsert beberapa data yang di perlukan

dalam sebuah kolom tabel dosen. Pada gambar di di atas, merupakan tampilan

akhir dalam bentuk tabel dengan empat kolom. Jelas sekali pada gambar di atas

jumlah digit pada kode dosen terutama angka nol lebih dari satu, dan angka

tersebut otomatis tidak dapat berubah sampai seterusnya karena sebelumnya kode

dosen telah di deklarasikan oleh unsigned zerofill dan auto increment.

8. mysql> create table mata_kuliah(

-> Kode_MK int(2) not null auto_increment,

-> Nama_MK varchar(30) not null,

-> Sks char(1) not null,

-> semester char(10) not null,

-> jenis varchar(10) null,

-> primary key (Kd_MK)):

Query OK, 0 rows affected (0.13 sec)

13

Page 14: Laporan Praktikum Basis Data Modul II-Primary Key

Pada gambar di atas, merupakan proses pembuatan berupa tabel baru yang

ingin praktikan buat. Pada kolom kode mata kuliah terdapat auto increment yaitu

terlihat bahwa nomor yang ada dalam pengisian syntax pada tabel bertipe integer

ini dengan menggunakan not null maupun auto_increment. Praktikan akan

membahas tentang auto increment atau membuat kolom penambahan otomatis.

Penggunaan bentuk auto increment memiliki syarat-syarat khusus yaitu data harus

berupa data integer dari kunci primer.

9. mysql> show tables;+--------------------+

| Tables_in_pengajaran|

+--------------------+

| dosen |

| mata_kuliah |

+--------------------+

2 row in set (0.00 sec)

Perintah show tables digunakan untuk menampilkan tabel apa saja yang

telah dibuat dalam database pengajaran. Pada database pengajaran, praktikkan

telah menciptakan dua tabel.

10. mysql> desc mata_kuliah; +--------+---------------+------+-----+---------+------------+ | Field | Type | Null | Key | Default| Extra |

+---------+---------------+-------+-----+-------+------------+

|Kode_MK | int(2) | NO | PRI | NULL |auto_increment|

|Nama_MK | varchar(30) | NO | | | |

|Sks | char(1) | NO | | | |

|semester | char(10) | NO | | | |

|jenis | varchar(10) | YES | | NULL | |

+---------+---------------+------+-----+------+--------------+

5 rows in set (0.00 sec)

Perintah desc mata kuliah atau dapat juga ditulis describe mata kuliah

digunakan untuk melihat struktur tabel mata kuliahyang menampilkan field apa

saja yang terdapat dalam table tersebut. Kolom kode mata kuliah di atas

14

Page 15: Laporan Praktikum Basis Data Modul II-Primary Key

menggunakan primary key yang artinya kolom tersebut menjadi kunci utama

dalam auto increment.

11.

Gambar 3.3 Memasukkan data ke dalam tabel mata kuliah dan menampilkan struktur tabelnya

Pada gambar di atas, praktikkan menginsert beberapa data yang di perlukan

dalam sebuah kolom tabel mata kuliah. Pada gambar di di atas, merupakan

tampilan akhir dalam bentuk tabel dengan empat kolom. Jelas sekali pada gambar

di atas untuk kolom kode mata kuliah, praktikkan tidak perlu memasukkan digit

angkanya karena kolom tersebut sudah dideklarasikan dengan auto increment

sehingga akan terjadi penambahan dan pengurutan digitnya secara otomatis.

12. mysql> create table mahasiswa(

-> No varchar(8) not null,

-> Nim int(8) not null auto_increment,

-> Nama_Lengkap varchar(22) not null,

-> Jenis_Kelamin varchar(10) not null,

-> Fakultas varchar(10) not null,

-> Jurusan varchar(24) not null,

-> primary key (Nim));

Query OK, 0 rows affected (0.08 sec)

15

Page 16: Laporan Praktikum Basis Data Modul II-Primary Key

Perintah “create table mahasiswa” merupakan syntax yang digunakan untuk

menciptakan tabel pertama dalam database kedua dengan nama “mahasiswa”.

Tipe data integral digunakan untuk menyatakan data yang merupakan angka

bulat. Tipe data varchar digunakan untuk menyatakan data teks tetapi digunakan

untuk data yang memiliki panjang karakter yang berbeda-beda. Pada tabel

mahasiswa yang menjadi kolom utamanya yaitu kolom nim karena dideklarasikan

dengan primary key. Keseluruhan kolom dalam tabel mahasiswa ini dinyatakan

not null atau kolom tidak boleh ada yang kosong.

12. . mysql> show tables;

+--------------------+

| Tables_in_kuliah |

+--------------------+

| mahasiswa |

+--------------------+

1row in set (0.00 sec)

Perintah show tables digunakan untuk menampilkan tabel apa saja yang

terdapat dalam database kuliah. Pada database kedua ini baru terdapat dua tabel.

13. mysql> desc mahasiswa;

+-------------+--------------+------+-----+-------+----------+

| Field | Type | Null | Key |Default| Extra |

+-------------+--------------+------+-----+--------+---------+

|No | varchar(8) | NO | | NULL | |

|Nim | int(8) | NO | PRI | NULL |auto_increment|

|Nam_Lengkap | varchar(30) | NO | | NULL | |

|Jenis_Kelamin | varchar(30) | NO | | NULL | |

|Fakultas | varchar(30) | NO | | NULL | |

|Jurusan | varchar(30) | NO | | NULL | |

+---------+---------------+------+-----+---------+-----------+6 rows in set (0.00 sec)

Perintah desc mahasiswa atau dapat juga ditulis describe mahasiswa

digunakan untuk melihat struktur tabel mahasiswa yang menampilkan field apa

saja yang terdapat dalam table tersebut. Kolom kode nim di atas menggunakan

16

Page 17: Laporan Praktikum Basis Data Modul II-Primary Key

primary key yang artinya kolom tersebut menjadi kunci utama dalam auto

increment.

13.

Gambar 3.4 Memasukkan data ke dalam tabel mahasiswa dan menampilkan struktur tabelnya

Pada pada bagian insert seperti gambar di atas tersebut telah diketahui

sebelumnya bahwa auto increment berfungsi secara garis besar ialah membuat

kolom penambahan secara otomatis. Pada gambar di atas, praktikan mengisi nilai

ke dalam tabel untuk kolom nim ada yang berupa (“”) dikarenakan kolom

tersebut sudah bersyarat secara otomatis. Artinya, pada pengisian nilai pertama

untuk nim, praktikkan hanya menuliskan satu kali saja dan selanjutnya akan terisi

otomatis karena kolom nim dideklarasikan dengan auto increment.

14. mysql> create table profile_mahasiswa(

-> kd_mahasiswa int(3)unsigned zerofill not null auto_increment,

-> nama_lengkap varchar(20) not null,

-> tempat_lahir varchar(20)not null,

-> tanggal_lahir varchar(20) not null,

-> agama varchar(10) not null,

-> phone varchar(12) null,

-> primary key (kd_mahasiswa)); Query OK, 0 rows affected (0.10 sec)

17

Page 18: Laporan Praktikum Basis Data Modul II-Primary Key

Perintah “create table profile_mahasiswa” merupakan syntax yang

digunakan untuk menciptakan tabel kedua dengan nama “profile mahasiswa”,

table profile mahasiswa ini berisi field kode mahasiswa yang memiliki tipe data

int dan terdiri dari 3 digit yang dideklarasikan dengan unsigned zerofill, not null

dan auto increment. Field nama lengkap, tempat lahir, tanggal lahir, agama dan

phone kesemuanya memiliki tipe data varchar dan masing-masing terdiri dari 20,

20, 20, 10 dan 12 karakter. Dalam tabel profile mahasiswa di atas, yang menjadi

kolom utamanya adalah kode mahasiswa. Kolom tersebut dideklarasikan dengan

primary key.

15. mysql> show tables;+--------------------+

| Tables_perpustakaan|

+--------------------+

| mahasiswa |

| profile_mahasiswa |

+--------------------+

2 row in set (0.00 sec)

Perintah show tables digunakan untuk menampilkan tabel apa saja yang

terdapat dalam database. Setelah syntax di jalankan hasilnya yaitu tabel profile

mahasiswa terdapat pada database kuliah. Sekarang pada database kuliah sudah

terdapat dua buah tabel.

16. Untuk melihat struktur tabel profile mahasiswa lihat mysql di bawah ini :

mysql> desc desk_buku;

+---------+---------------+------+-----+---------+---------------+

| Field | Type | Null | Key | Default | Extra |

+---------+---------------+------+-----+---------+---------------+

|kd_mahasiswa| int(3)unsigned zerofill| NO |PRI | auto_increment

|nama_lengkap| varchar(20) | NO | | NULL | |

|tempat_lahir | varchar(20) | NO | | NULL | |

|tanggal_lahir | varchar(20) | NO | | NULL | |

|agama | varchar(10) | YES | | NULL | |

|phone | varchar(12) | YES | | NULL | |

18

Page 19: Laporan Praktikum Basis Data Modul II-Primary Key

+---------+---------------+------+-----+---------+-------+4 rows in set (0.00 sec)

Perintah desc profile mahasiswa atau dapat juga ditulis describe profile

mahasiswa digunakan untuk melihat struktur tabel profile mahasiswa yang

menampilkan field apa saja yang terdapat dalam table tersebut. Kolom kode

mahasiswa di atas menggunakan primary key yang artinya kolom tersebut menjadi

kunci utama dalam auto increment.

17.

Pada pada bagian insert seperti gambar di atas tersebut telah diketahui

sebelumnya bahwa auto increment berfungsi secara garis besar ialah membuat

kolom penambahan secara otomatis. Pada gambar di atas, praktikan mengisi nilai

ke dalam tabel untuk kolom kode mahasiswa ada yang berupa (“”) dikarenakan

kolom tersebut sudah bersyarat secara otomatis. Artinya, pada pengisian nilai

pertama untuk kode mahasiswa, praktikkan hanya menuliskan satu kali saja dan

selanjutnya akan terisi otomatis karena kolom kode mahasiswa dideklarasikan

dengan auto increment. Pada kolom kode mahasiswa juga dideklarasikan dengan

unsigned zerofill sehingga untuk digit pertama dan kedua adalah angka nol.

19

Page 20: Laporan Praktikum Basis Data Modul II-Primary Key

Dalam mengerjakan suatu basis data tentu saja tidak selamanya berjalan

dengan mulus. Sama seperti halnya gambar dibawah ini, praktikan menemukan

kasus eror dalam pembuatan sistem basis data di atas dengan menggunakan

MySQL. Berikut beberapa kasus erornya :

Gambar 3.1 Kasus ‘error’ saat akan membuat tabel mahasiswa

Kejadian error sempat terjadi pada saat praktikan akan menampilkan

database. Kata “ERROR” tepat berada dibawah ‘’create table mahasiswa’’

artinya terjadi kesalahan dalam proses pembuatan tabel mahasiswa tersebut. Hal

tersebut terjadi karena praktikan tidak menuliskan not null sebelum

auto_increment pada baris kedua. Pada gambar diatas terdapat kalimat “you have an error in your SQL, syntax; check the nanual that corresponds to

your MySQL server version for the right syntax to use near

'unsigned zerofill, auto_increment, nim int(8) auto_increment not

null, nama_langkap at line 2”. Kesalahan error di atas mempunyai arti

“kamu mempunyai suatu kesalahan di (dalam) SQL mu, sintak; memeriksa nanual yang sesuai dengan Mysql server versi mu untuk

kebenaran sintak untuk menggunakan dekat ' unsigned zerofill,

auto_increment, nim int(8) auto_increment not null, nama_langkap

pada garis 2”. Metode auto increment berdasrkan syntak yang di gunakan di

dalam MySQL, auto increment harus di definisikan setelah not null yang berarti

kolom tersebut tidak boleh kosong. Pada gambar di atas dapat dilihat bahwa

praktikkan melakukan kesalahan tepatnya pada baris kedua yaitu auto increment

di definisikan di definisikan sebelum not null.

20

Page 21: Laporan Praktikum Basis Data Modul II-Primary Key

BAB IV

PENUTUP

Setelah praktikan melakukan praktikum untuk menyelesaikan suatu kasus

menggunakan database server MySQL terkait tema laporan praktikum basis data

yaitu “Primary Key” maka praktikan mendapatkan kesimpulan sebagai berikut :

1. Primary Key berguna pada saat menampilkan record hasil pencarian

(searching), pengurutan (sorting), dan berbagai operasi query lainnya. Dengan

memilih primary key maka proses pencarian, pengurutan dan proses

penampilan data dan lainnya berlangsung lebih cepat.

2. Primary Key atau kunci primer berfungsi untuk diciptakan sebagai kolom

utama pada sebuah tabel.

3. Primary Key atau kunci primer dapat mencegah data yang kembar maupun

ganda.

4. Dalam pembuatan kunci primer diperbolehkan hanya membuatnya sekali.

5. Syarat utama dalam menciptakan kunci primer ialah kolom tersebut tidak

boleh kosong atau di ataur dengan NOT NULL.

21