Struktur tabel dibuat untuk menjelaskan struktur data-data yang terdapat di dalam sistem basis data yang digunakan untuk penelitian ini. Berikut adalah penjelasan dari masing-masing tabel yang digunakan dalam database pada sistem gamifikasi pembelajaran matematika SMP.
1. Nama tabel : admin
Fungsi: Menyimpan data akun admin yang digunakan pada website admin.
Primary Key : id Foreign Key : -
Tabel 3.5 Struktur Tabel admin
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. email varchar(200) Email dari admin
3. password varchar(50) Password dari pengguna 4. password_salt varchar(5) Salt dari password pengguna 5. last_login timestamp Waktu terakhir kali admin login
2. Nama tabel : user
Fungsi: Menyimpan data pengguna pada aplikasi gamifikasi pembelajaran matematika SMP.
Primary Key : id
Foreign Key : fk_guider_id
Tabel 3.6 Struktur Tabel user
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. username varchar(200) Username dari pengguna
3. email varchar(50) Email dari pengguna
Tabel 3.6 Struktur Tabel user (Lanjutan)
No Nama Kolom Tipe Data Keterangan
4. password varchar(5) Password dari pengguna 5. password_salt timestamp Salt dari password pengguna
6. coin int(11) Jumlah koin pengguna
7. xp int(11) Jumlah poin experince pengguna
8. fk_guider_id int(11) Foreign Key dari id pemandu 9. last_login timestamp Waktu terakhir kali pengguna
login
10. join_date timestamp Waktu pengguna melakukan pendaftaran
3. Nama tabel : chapter
Fungsi: Menyimpan data bab pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id Foreign Key : -
Tabel 3.7 Struktur Tabel chapter
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(200) Judul dari bab
3. picture varchar(200) Nama file dari gambar bab
4. Nama tabel : subbab
Fungsi: Menyimpan data subbab pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_chapter_id
Tabel 3.8 Struktur Tabel subbab
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(200) Judul dari subbab
3. picture varchar(200) Nama file dari gambar subbab 4. final_test tinyint(1) Menyimpan nilai subbab
merupakan ujian atau bukan 5. fk_chapter_id int(11) Foreign Key dari id subbab
5. Nama tabel : explanation
Fungsi: Menyimpan data penjelasan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_subbab_id
Tabel 3.9 Struktur Tabel explanation
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. content text Menyimpan isi penjelasan dari subbab
3. fk_subbab_id int(11) Foreign Key dari id subbab
6. Nama tabel : question
Fungsi: Menyimpan data pertanyaan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_subbab_id
Tabel 3.10 Struktur Tabel question
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. content text Menyimpan pertanyaan
Tabel 3.10 Struktur Tabel question (Lanjutan)
No Nama Kolom Tipe Data Keterangan
3. hint text Menyimpan petunjuk pada
pertanyaan
4. fk_subbab_id int(11) Foreign Key dari id subbab
7. Nama tabel : answer
Fungsi: Menyimpan data pilihan jawaban pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_question_id
Tabel 3.11 Struktur Tabel answer
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. content text Menyimpan pilihan jawaban
3. status tinyint(1) Menyimpan pilihan jawaban benar atau salah
4. fk_question_id int(11) Foreign Key dari id pertanyaan
8. Nama tabel : runes
Fungsi: Menyimpan data runes pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id Foreign Key : -
Tabel 3.12 Struktur Tabel runes
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(50) Nama dari rune
3. cost int(11) Biaya dari rune
4. picture varchar(200) Foreign Key dari id pertanyaan
Tabel 3.12 Struktur Tabel runes (Lanjutan)
No Nama Kolom Tipe Data Keterangan
5. description text Deskripsi dari rune
9. Nama tabel : guider
Fungsi: Menyimpan data pemandu pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id Foreign Key : -
Tabel 3.13 Struktur Tabel guider
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(200) Nama dari pemandu
3. picture varchar(200) Menyimpan nama file dari pemandu
4. cost int(11) Biaya dari pemandu
5. ability text Kemampuan dari pemandu
6. description text Deskripsi dari pemandu
10. Nama tabel : achievement
Fungsi: Menyimpan data penghargaan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id Foreign Key : -
Tabel 3.14 Struktur Tabel achievement
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(100) Nama dari penghargaan
3. description text Deskripsi dari penghargaan
11. Nama tabel : achievement_type_reward
Fungsi: Menyimpan data tipe penghargaan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id Foreign Key : -
Tabel 3.15 Struktur Tabel achievement_type_reward
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto Increment
2. name varchar(30) Nama dari tipe penghargaan
3. reward int(11) Jumlah hadiah dari tipe
penghargaan
12. Nama tabel : achievement_ reward
Fungsi: Menyimpan data sasaran penghargaan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_achievement_id, fk_achievement_type_id Tabel 3.16 Struktur Tabel achievement_reward
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment 2. fk_achievement_id varchar(30) Foreign Key dari id
penghargaan 3. fk_achievement_type_id int(11) Foreign Key dari id tipe
penghargaan
4. goal int(11) Nilai capaian dari sasaran
penghargaan 5. picture varchar(200) Nama file dari sasaran
penghargaan
13. Nama tabel : achievement_ progress
Fungsi: Menyimpan data progres penghargaan pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_user_id, fk_achievement_id, fk_achievement_type_id Tabel 3.17 Struktur Tabel achievement_progress
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment 2. fk_user_id varchar(30) Foreign Key dari id
pengguna 3. fk_achievement_id int(11) Foreign Key dari id
penghargaan
4. progress int(11) Nilai capaian dari
sasaran penghargaan 5. fk_achievement_type_reward_id varchar(200) Foreign Key dari id
tipe penghargaan
14. Nama tabel : user_follow
Fungsi: Menyimpan data pengguna ikuti pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_follower_id, fk_following_id
Tabel 3.18 Struktur Tabel user_follow
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment 2. fk_follower_id int(11) Foreign Key dari id
pengguna mengikuti 3. fk_following_id int(11) Foreign Key dari id
penghargaan diikuti
4. status tinyint(1) Nilai status dari
pengguna ikuti
15. Nama tabel : subbab_progress
Fungsi: Menyimpan data progres subbab pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_user_id, fk_subbab_id
Tabel 3.19 Struktur Tabel subbab_progress
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment
2. fk_user_id int(11) Foreign Key dari id
pengguna
3. fk_subbab_id int(11) Foreign Key dari id
subbab
4. score int(11) Nilai skor pengguna
dapatkan dari latihan 5. status_explanation tinyint(1)
Nilai pengguna 16. Nama tabel : user_coin_log
Fungsi: Menyimpan data pemberian koin pengguna pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_follower_id, fk_following_id
Tabel 3.20 Struktur Tabel user_coin_log
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment
Tabel 3.20 Struktur Tabel user_coin_log (Lanjutan)
No Nama Kolom Tipe Data Keterangan
2. fk_follower_id int(11) Foreign Key dari id pengguna mengikuti 3. fk_following_id int(11) Foreign Key dari id
penghargaan diikuti
4. coin int(11) Jumlah koin yang
diberikan
5. date date Tanggal pemberian
koin
6. status tinyint(1) Status penerimaan
pemberian koin 17. Nama tabel : user_runes
Fungsi: Menyimpan data rune pengguna pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_user_id, fk_runes_id
Tabel 3.21 Struktur Tabel user_runes
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment
2. fk_user_id int(11) Foreign Key dari id
pengguna
3. fk_runes_id int(11) Foreign Key dari id
rune
4. amount tinyint(1) Jumlah rune dari
pengguna 18. Nama tabel : user_guider
Fungsi: Menyimpan data pemandu pengguna pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_user_id, fk_guider_id
Tabel 3.22 Struktur Tabel user_guider
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment
Tabel 3.22 Struktur Tabel user_guider (Lanjutan)
No Nama Kolom Tipe Data Keterangan
2. fk_user_id int(11) Foreign Key dari id
pengguna
3. fk_guider_id int(11) Foreign Key dari id
pemandu 19. Nama tabel : chapter_progress
Fungsi: Menyimpan data progres bab pengguna pada aplikasi gamifikasi pembelajaran matematika.
Primary Key : id
Foreign Key : fk_user_id, fk_chapter_id
Tabel 3.23 Struktur Tabel chapter_progress
No Nama Kolom Tipe Data Keterangan
1. id int(11) Primary Key, Auto
Increment
2. fk_user_id int(11) Foreign Key dari id
pengguna
3. fk_chapter_id int(11) Foreign Key dari id
bab