Anda di halaman 1dari 3

Materi Praktikum Pert I

Oleh : Nur Azis, S.Kom., M.Kom


Membangun relasi antar tabel database MySQL dengan foreign Key

Maka langkah pertama membuat tabel-tabel yang menampung data referensi (tabel kategori
dan tabel rak) terlebih dahulu baru membuat tabel data utama (tabel film) melalui langkah-
langkah di bawah:
1. Membuat Database Belajar dengan perintah:
Create Database Belajar;
2. Kemudian mengaktifkan dengan perintah :
Use Belajar;
3. Kemudian membuat tabel kategori dengan perintah:

CREATE TABLE kategori (


id int PRIMARY Key AUTO_INCREMENT,
nama varchar(15)
);
4. kemudian membuat tabel rak dengan perintah:

CREATE TABLE rak (


id int PRIMARY Key AUTO_INCREMENT,
nama varchar(15)
);
5. Dan yang terakhir membuat tabel film dengan perintah:

CREATE TABLE film (


id int(11) NOT NULL AUTO_INCREMENT,
nama varchar(50) NOT NULL,
id_rak int(11) NOT NULL,
id_kategori int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY id_rak (`id_rak`),
KEY id_kategori (`id_kategori`),
CONSTRAINT id_kategori FOREIGN KEY (`id_kategori`) REFERENCES
`kategori` (`id`),
CONSTRAINT id_rak FOREIGN KEY (`id_rak`) REFERENCES `rak` (`id`)
);
6. Setelah itu coba memasukkan data ke dalam tabel kategori dengan query seperti
berikut:

INSERT INTO kategori VALUES


(NULL, 'fiksi'),
(NULL, 'drama'),
(NULL, 'horor'),
(NULL, 'komedi'),
(NULL, 'action');
7. Maka hasilnya ketika dijalankan query SELECT di tabel kategori:

SELECT * FROM kategori;


8. Hasilnya seperti berikut:

9. Kemudian memasukkan data ke dalam tabel rak dengan query berikut:

INSERT INTO rak VALUES


(NULL, 'abc'),
(NULL, 'def'),
(NULL, 'ghi'),
(NULL, 'jkl');
10. Maka hasilnya ketika dijalankan query SELECT di tabel rak:
SELECT * FROM rak;
11. Hasilnya seperti berikut:

12. Setelah itu memasukkan data ke dalam tabel utama (tabel film) dengan query berikut:
INSERT INTO film VALUES (NULL, 'Captain America', 1, 1);
13. Maka hasilnya ketika dijalankan query SELECT di tabel film:

SELECT * FROM film;


14. Hasilnya seperti berikut:

15. kemudian coba memasukkan data di tabel film seperti berikut:

INSERT INTO film VALUES (NULL, 'Iron Man', 5, 1);


16. Maka hasilnya error dengan output berikut:

Ket :
hal ini dikarenakan id_rak yang bernilai 5 yang saya masukkan belum tersimpan di
dalam tabel rak. Sehingga jika saya masukkan nilai 5 di dalam tabel rak, error tersebut
tidak akan terjadi dan data film "Iron Man" akan tersimpan di dalam tabel film.

Anda mungkin juga menyukai