BAB 1V
IMPLEMENTASI DAN PEMBAHASAN SISTEM
4.1. Implementasi Sistem
Dalam proses ananlisis integritas dan rule database pada kasus
“SISTEM INFORMASI PENILAIAN SISWA BERBASIS WEB PADA SMP
NEGERI 2 BOJONGSARI PURBALINGGA”. Analisis dapat dilakukan mulai
dari analisis alur sistem, analisis rancangan database, analisis
rancangan alur data dan analisis relasi table. Semua analisis ini
sangatlah penting untuk mengetahui integritas basis data dalam
menjamin validitas data yang terekam ke dalam basis data,karena
suatu data seharusnya mengikuti sejumlah karakteristik dasar sesuai
dengan ketentuan yang telah diketahui/ditentukan.
Untuk menganalis kasus ini, kita menggunakan referensi teoritis
dan MySQL sebagai database sever.
Berdasarkan hasil analis database dan analisis perancangan
sistem yang telah dilakukan, diharapkan database yang dihasilkan
dalam sistem ini dapat sesuai dengan tingkat integritas dan efektifitas
rule databse yang sesuai sehingga dapat memenuhi kebutuhan lebih
atau secara optimal.
Sebuah program tentunya membutuhkan database sebagai
tempat penyimpanan table – table yang di butuhkan program. Tentunya
koneksi database dengan aplikasi di awali dengan konfigurasi koneksi ke
database MySQL sebagai berikut sebagai sebuah ketentuan yang benar:
$db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'nama database'; $db['default']['dbdriver'] = 'mysql';
4.1.2 Analisis Data Relasi Tabel
Relasi table adalah hubungan antara table yang merepresentasikan
hubungan antara satu obyek dengan obyek yang lainnya di dunia nyata.
1. One- to- many yang artinya record pada suatu table boleh berlasi dengan banyak record pada table lain.
2. One- to- one yang artinya setiap record di entitas pertama hanya akan berhubungan dengan satu record di entitas kedua begitu sebaliknya. 3. Many- to- many yang artinya ada banyak record di entitas satu dan
entitas dua yang saling berhubungan satu sama lain.
Atribut adalah ciri ciri kualitatif yang dimiliki suatu obyek, yang
mencerminkan sifat – sifat dari obyek tersebut. (Bambang Hariyanto,2004)
Contoh data dalam kasus ini :
a) Entitas :
Guru,Kelas, Siswa, Detail_kelas, Nilai, Kehadiran, Matapelajaran,
Smester, Alumi, Alumni dan Admin. b) Relasi antara Entitas :
1. Relasi antara Guru dengan Kelas : satu guru bisa memiliki banyak kelas dan satu kelas dapat dimiliki oleh banyak siswa.
2. Relasi antara guru dengan matapelajaran : satu guru bias mengampu banyak matapelajaran.
3. Matapelajaran dengan Nilai : satu matapelajaran bias memiliki banyak nilai.
4. Nilai dengan Siswa : banyak nilai dapat dimiliki oleh satu siswa. 5. Nilai dengan Smester : banyak nilai dapat diperoleh dalam satu
smester.
6. Kelas dengan detail_kelas : satu kelas memiliki banyak detail_kelas. 7. Detail_kelas dengan smester : banyak detail kelas untuk satu smester. 8. Siswa dengan kehadiran : seorang siswa harus memiliki banyak
jumlah kehadiran.
9. Smester dengan kehadiran : satu smester harus memiliki banyak kehadiran.
Menunjukan jumlah maksimum entitas yang dapat berelasi dengan
entitas pada himpunan entitas yang lain dan begitu juga sebaliknya.
Dari kasus diatas terbentuklah tabel – table untuk “SISTEM INFORMASI
PENILAIAN SISWA BERBASIS WEB PADA SMP NEGERI 2 BOJONGSARI
PURBALINGGA”.dan setelah dilakukan analisis ditinjau dari ketentuan
database diatas maka dapat dikatakan bahwa dalam system relasi antara
table tentunya relasi table pada kasus ini sudah benar dan sesuai dengan
ketentuan umum basis data.
.2.Pembahasan sistem
Integritas data menjamin kualitas data dalam database, mencakup :
1. menjamin keutuhan data
2. menjamin agar perubahan terhadap basis data tidak menghasilkan inkonsistensi data.
Dalam basis data dikenal istilah aturan integritas (integrity
constraint) yang mengatur definisi dan modifikasi terhadap basis data sehingga menjamin integritas basis data tersebut.
Jenis aturan integritas :
1. Entity integrity constraints (aturan integritas entitas) 2. Domain constraints (aturan domain)
3. Referential integrity constraints (aturan integritas referensial)
4. Attribut-Based Constraints (aturan berbasis atribut) dan Tuple-Based Constraints (aturan berbasis tupel).
5. Assertions (pernyataan) 6. Trigger (pemicu)
4.2.1 Entity integrity constraints (aturan integritas entitas) CREATE TABEL:
CREATE TABLE Guru
(Nim VARCHAR(18) PRIMARY KEY, Nm_guru VARCHAR(30), Alamat
VARCHAR(50), Jabatan VARCHAR(15), Pendidikan VARCHAR(50),
Golongan VARCHAR(5), Agama Tinyint(1), Username VARCHAR(20),
Password varchar(15), Foto VARCHAR(20));
Aturan diatas diterapkan dengan cara mendeklarasikan kunci primer (primary key) untuk setiap entitas agar dijamin tidak ada baris-baris dalam tabel relasi yang memiliki nilai yang sama (duplikat baris).
1. Analisis aturan integritas data pada Entitas yang terdapat dalam database “Sistem Informasi Penilaian Siswa berbasis web”.
Dalam struktur table Guru.
No Nama field Type Lebar Keterangan
1 Nip * Varchar 18 Kunci utama
2 Nm_guru Varchar 30 Nama lengkap
3 Alamat Varchar 50 Alamat
4 Jabatan Varchar 15 Jabatan
5 Pendidikan varchar 50 Pendidikan
6 Golongan Varchar 5 Golongan
7 Agama Tinyint 1 Agama
8 Username Varchar 20 Username 9 Password Varchar 15 Password
10 Foto Varchar 20 Foto
Pembuktian Akan kebenaran data dapat dilakukan melalui perintah SQL dengan memasukan data pada setiap fied dengan menggunakan INSERT,Berikut perintah pembuktian tersebut:
INSERT INTO `sekolah`.`guru` (`Nip`, `Nm_guru`, `Alamat`, `Jabatan`,
Hasil uji Bahwa table dapat menympan data sesuai dengan benar dan tepat dapat kita lihat pada gambar berikut ini:
2. Domain constraints (aturan domain)
Membuat constraints.
Constrain merupkan suatu aturan yang membatasi jenis data yang di ijinkan untuk dimasukan kedalam
table.Constraint dapat dibuat baik pada saat pembuatan tabel atau setelah tabel dibuat. Ketika constraint dibuat setelah pembuatan tabel, maka constraint tersebut hanya mengecek data yang ada (yang telah dimasukkan dalam tabel). Jika ada beberapa pelanggaran maka constraint akan ditolak.
Create digunakan untuk membuat obyek baru didalam
database.sebagai contoh membuat databse baru,table baru,dan lain-lain.
Membuat database baru:
Mengaktifkan database
Menonaktifkan perintah Sql dengan menggunakan tanda double dash (--) didepan perintah Sql.
Untuk mengecek database yang telah dibuat apakah sudah ada atau belum caranya:
SP_DATABASES
Salah satu contoh table yang dibuat dalam kasus yang diteliti ini:
Ketentuan:
1. Null tidak sama dengan nol,tetapi memiliki arti bahwa kolom atau fiel tersebut tidak ada data yang dimasukan.
2. Not Null menyatakan bahwa data pada kolom tersebut tidak boleh kosong atau harus diisi.
CREATE DATABASE Penilaian_siswa
USE Penilaian_siswa
--CREATE DATABASE
CREATE TABEL alumni(Id_alumni int (5) Primary key not null,Nama_lengkap Varchar(30),Alamat
Untuk mengecek tabele yang telah dibuat apakah sudah ada atau belum:
Kasus (contoh table nilai) yang di teliti untuk mengetahui identity:
Berikut ini merupakan suatu cara yang dipakai untuk mengecek identity dalam table nilai:
SELECT * FROM Alumni.TABLES;
CREATE TABELE nilai (Id_nilai int (5) Primary key notnull ),
Id_matapelajaran int (5) foreign key references matapelajaran (Id_matapelajaran),
Id_siswa int (5) foreign key references siswa (Id_siswa),
Id_semester int (5) foreign key references semester (Id_semester ),
Nilai_ulgn1 int (5), Nilai_ulgn2 int (5), Nilai_ulgn3 int (5),
Nilai_tugas int (5),Nilai_UK int
(5),Nilai_harian int (5),Nilai_UTS int (5),Nilai_US int (5),Nilai_KKM int (5),
Nilai_raport Varchar (2),Nilai_Akhlak
Hasil Uji memasukan data:
Identity atau biasa disebut dengan istilah autonumber adalah nilai yang dihasilkan oleh system secara otomatis dan terurut sesuai dengan urutan nilai yang dimasukan.dan pada table diatas tidak terdapat identity.
Bentuk umum dari identity adalah:
Nama_kolom.Tipe_data identity (m,n) [ket];
# 2015-07-07 21:48:59 root DROP TABLEIFEXISTS`nilai`;
# 2015-07-07 21:48:59 root CREATE TABLE`nilai`( `Id_nilai`INT(5)NOTNULL,
`Id_matapelajaran`INT(5)NOTNULL, `Id_siswa`INT(5)NOTNULL,
`Id_semester`INT(5)NOTNULL, `Nilai_ulgn1`INT(5)NOTNULL, `Nilai_ulgn2`INT(5)NOTNULL, `Nilai_ulgn3`INT(5)NOTNULL, `Nilai_tugas`INT(5)NOTNULL, `Nilai_UK`INT(5)NOTNULL, `Nilai_harian`INT(5)NOTNULL, `Nilai_UTS`INT(5)NOTNULL, `Nilai_US`INT(5)NOTNULL, `Nilai_KKM`INT(5)NOTNULL,
`Nilai_rapor`VARCHAR(2)NOTNULL, `Nilai_akhlak`VARCHAR(1)NOTNULL, `Nilai_keperibadian`VARCHAR(1) NOTNULL, `Ket`TINYINT( 1)NOTNULL,
PRIMARYKEY(`Id_nilai`)
)ENGINE= INNODB DEFAULT CHARSET
Dengan m adalah nilai awal sedangkan n pertambahan nilainya .2.3. Integritas Pengacuan (Referential Integrity:
A. Struktur tabel matapelajaran
No Nama field Type Lebar Keterangan
1 Id_matapelajaran * Integer 5 Kunci utama
2 Nip ** Varchar 18 Kuci tamu
3 Matapelajaran Varchar 50 Matapelajaran
Table matapelajaran dengan struktur:
No Nama kolom Tipe Leba
r
Keterangan
1 Id_matapelajaran * Integer 5 Primarykey not null
2 Nip ** Varchar 18 Not null
3 Matapelajaran Varchar 50 not null
CREATE TABEL matapelajaran (
Id_matapelajaran int(5) primarykey not null,Nip Varchar(18) not null, Matapelajaran Varchar(50)
);
Ketika kita memasukan data pada tabel diatas,kita akan
menemukan hasil yang juga tidak dapat disalahkan sperti pada perintah SQL dan gambar di bawah ini:
B. Struktur tabel semester
No Nama field Type Leba r
Keterangan
1 Id_semester * Integer 5 Kunci utama
2 Semester Tinyint 1 Semester
3 Tahun Year 4 Tahun angkatan
Table semester dengan struktur
No Nama kolom Tipe Leba r
Keterangan
1 Id_semester * Integer 5 Primarykey not null 2 Semester Tinyint 1 Not null
3 Tahun Year 4 Not null
CREATE TABEL semester(
Id_semester INT(5)primarykey NOT NULL
Semester Tinyti(1) NOT NULL
Tahun year(4) Not NOT NULL
Dari hasil analisis tabel di atas kita dapat mengetahui fungsi yang jelas dari primary key sebagai sebuah atribut atau himpunan atribut minimal yang dapat mengidentifikasi secara unik kemunculan sebuah entitas yang spesifik.
Setelah diuji kebenaranya dengan memasukan data,kita dapat mengetahui melalui perintah insert sperti :
Yang menghasilkan keluaran:
C. Struktur tabel detail_kelas
No Nama field Type Lebar Keterangan 1 Id_semester** Integer 5 Id_semester 2 Kd_kelas ** Integer 5 Kode kelas
3 Nis Varchar 4 Nomor induk siswa
INSERTINTO`sekolah`.`semester`( `Id_semester`,
`Semester`, `Tahun` )
VALUES(
4 Status Tinyint 1 Status kenaikan
Struktur tabel detail_kelas
No Nama field Type Lebar Keterangan 1 Id_semester** Integer 5 Not null 2 Kd_kelas ** Integer 5 Not null
3 Nis Varchar 4 Not null
4 Status Tinyint 1 Not null
CREATE TABEL detail_kelas(
Id_semester int(5) FOREIGN KEY REFERENCES semester (Id_semester),
Kd_kelas int(5) FOREIGN KEY REFERENCES kelas(Kd_kelas)
Nis Varchar(4),Status Tinyint(1)
Berikut adalah perintah pengecekan yang merupakan salah satu bentuk perintah dimana,jika table denar maka data yang di nput akan tersimpan dan dapat di jalankan.
Pengujian table kelas:INSERT INTO `sekolah`.`detail_kelas` (`Id_semester`, `kd_kelas`, `Nis`, `status`) VALUES ('123', '02', '2244', '3');
INSERTINTO`sekolah`.`detail_kelas`( `Id_semester`,
`kd_kelas`, `Nis`, `status` )
VALUES(
'1234','05','2311','2' ),(
Hsilnya:
D. Struktur table kelas
No Nama field Type Leba r
Keterangan
1 Kd_kelas * Integer 5 Kunci utama
2 Kelas Varchar 5 Kelas
3 Nip ** Varchar 18 Nomor induk pegawai Struktur table kelas
No Nama field Type Leba r
1 Kd_kelas * Integer 5 Primarykey Not null
2 Kelas Varchar 5 Not null
3 Nip ** Varchar 18 Not null
Munculnya foreign key pada beberapa level anak di atas adalah sebagai Cascading foreign key.
Pada kalimat SQL diatas kita dapat menciptakan kunci asing pada kalimat CREATE TABLE dengan FOREIGN KEY seperti yang telah di analisa.
Uji memasukan data:
Hasilnya:
CREATE TABEL kelas (
Kd_kelas int(5) Primary key Not null,
Kelas Varchar(5) Not null,
Nip Varchar(18) Not null FOREIGN KEY REFERENCES Nip(Nip)
);
INSERTINTO`sekolah`.`kelas`( `kd_kelas`,
`kelas`, `nip` )
VALUES(
'08','1','1234567' ),(