BAB IV. IMPLEMENTASI SISTEM DAN ANALISA HASIL
4.1. Database
4.1.1. Pembuatan Database
Pada bagian ini dilakukan pembuatan database baru pada MySQL, yang didalamnya berisi semua tabel-tabel yang dibutuhkan dalam perancangan Sistem Informasi Kependudukan. Adapun langkah-langkah yang dilakukan untuk membuat database yang baru adalah sebagai berikut:
1. Membuat database baru di MySQL yang digunakan untuk menyimpan semua informasi dan data yang digunakan dalam Sistem Informasi Kependudukan. Nama database baru yang dibuat adalah siak.
2. Untuk membuat tabel, dapat menggunakan sintak query SQL atau menggunakan create new table untuk MYSQL query browser dan
create table untuk SQLyog yang disesuaikan dengan table dan field yang diperlukan.
Pada sub bab bagian ini dilakukan pembuatan database baru pada MySQL, yang didalamnya berisi semua tabel-tabel yang dibutuhkan dalam perancangan Sistem Informasi Kependudukan. Adapun langkah-langkah yang dilakukan untuk membuat database yang baru adalah sebagai berikut:
Tabel-tabel yang dibutuhkan dalam pembuatan Sistem Informasi Kependudukan adalah sebagai berikut :
1. Tabel penduduk, berfungsi untuk menyimpan semua data-data tentang biodata penduduk, dapat dilihat pada Gambar 4.1 di bawah ini.
Tabel penduduk dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE penduduk ( NIK VARCHAR(20) NOT NULL, Nama VARCHAR(50) NOT NULL, Kelamin VARCHAR(2) NOT NULL,
Tempat_Lahir VARCHAR(100) NOT NULL, Tanggal_Lahir DATE NOT NULL,
Telepon INTEGER(10) UNSIGNED NOT NULL, No_Akta_Sah_Anak VARCHAR(20) NOT NULL, No_Akta_Lahir VARCHAR(20) NOT NULL, Status_Perkawinan VARCHAR(20) NOT NULL, No_Akta_KawinCerai VARCHAR(20) NOT NULL, Tanggal_KawinCerai VARCHAR(12) NOT NULL, No_Paspor VARCHAR(20) NOT NULL,
Tanggal_Habis_Paspor VARCHAR(12) NOT NULL, Agama INTEGER(10) UNSIGNED NOT NULL,
Gol_Darah VARCHAR(2) NOT NULL, Kebangsaan VARCHAR(30) NOT NULL, Kewarganegaraan VARCHAR(20) NOT NULL, No_SKBRI VARCHAR(20) NOT NULL,
No_SKGantiNama VARCHAR(20) NOT NULL, No_Surat_Pindah VARCHAR(20) NOT NULL, No_SKPPT VARCHAR(20) NOT NULL,
No_SKPPTS VARCHAR(20) NOT NULL,
Pendidikan_Terakhir INTEGER(10) UNSIGNED NOT NULL, Status_Pendidikan VARCHAR(20) NOT NULL,
Jenis_Pekerjaan INTEGER(10) UNSIGNED NOT NULL, Kelainan_Khusus INTEGER(10) UNSIGNED NOT NULL, Akseptor_KB INTEGER(10) UNSIGNED NOT NULL, Nama_Ibu VARCHAR(50) NOT NULL,
NIK_Ibu VARCHAR(20) NOT NULL, Nama_Ayah VARCHAR(50) NOT NULL, NIK_Ayah VARCHAR(20) NOT NULL, NPWP VARCHAR(20) NOT NULL, NPWPD VARCHAR(20) NOT NULL, PRIMARY KEY(NIK)
)
2. Tabel kartu_keluarga, berfungsi untuk menyimpan data-data tentang Kartu Keluarga, dapat dilihat pada Gambar 4.2 dibawah ini.
Gambar 4.2. Gambar Tabel Kartu_Keluarga Tabel Kartu Keluarga dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE kartu_keluarga ( No_KK VARCHAR(20) NOT NULL, Alamat TEXT NULL,
Kd_Kelurahan VARCHAR(20) NOT NULL, Kd_Kabupaten VARCHAR(20) NOT NULL, Kd_Propinsi VARCHAR(4) NOT NULL, Kd_Kecamatan VARCHAR(20) NOT NULL, Kd_Pedukuhan VARCHAR(20) NOT NULL, RT INTEGER(4) UNSIGNED NULL,
RW INTEGER(4) UNSIGNED NULL,
Kode_Post INTEGER(10) UNSIGNED NULL, Tanggal_Permohonan_KK DATE NOT NULL, Tanggal_Berlaku_KK DATE NOT NULL, Tanggal_Habis_KK DATE NOT NULL, PRIMARY KEY(No_KK),
FOREIGN KEY(Kd_Pedukuhan, Kd_Kecamatan, Kd_Propinsi, Kd_Kabupaten, Kd_Kelurahan)
REFERENCES pedukuhan(Kd_Pedukuhan, Kd_Kecamatan, Kd_Propinsi, Kd_Kabupaten, Kd_Kelurahan)
ON DELETE NO ACTION ON UPDATE NO ACTION )TYPE=InnoDB;
3. Tabel kartu_keluarga_penduduk, merupakan tabel yang menghubungkan tabel penduduk dan tabel kartu_keluarga, dapat dilihat pada Gambar 4.3 dibawah ini.
Gambar 4.3. Gambar Tabel Kartu_Keluarga_Penduduk
Tabel kartu_keluarga_penduduk dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE kartu_keluarga_penduduk ( NIK VARCHAR(20) NOT NULL,
No_KK VARCHAR(20) NOT NULL,
Hub_Keluarga INTEGER(2) UNSIGNED NULL,
Waktu_Pendataan TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(NIK, No_KK), FOREIGN KEY(NIK)
ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY(No_KK) REFERENCES kartu_keluarga(No_KK) ON DELETE CASCADE ON UPDATE CASCADE )TYPE=InnoDB;
4. Tabel kartu_tanda_penduduk, berfungsi untuk menyimpan data-data tentang kartu_tanda_penduduk, dapat dilihat pada Gambar 4.4 dibawah ini.
Gambar 4.4. Gambar Tabel Kartu_Tanda_Penduduk
Tabel kartu_tanda_penduduk dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE kartu_tanda_penduduk ( No_KK VARCHAR(20) NOT NULL,
NIK VARCHAR(20) NOT NULL, Foto TEXT NOT NULL,
Cap_Jari TEXT NOT NULL, Tanda_Tangan TEXT NOT NULL,
Tanggal_Berlaku_KTP DATE NOT NULL, Tanggal_Habis_KTP DATE NOT NULL, PRIMARY KEY(No_KK, NIK),
FOREIGN KEY(NIK, No_KK)
REFERENCES kartu_keluarga_penduduk(NIK, No_KK) ON DELETE CASCADE
ON UPDATE CASCADE )TYPE=InnoDB;
5. Tabel user, berfungsi untuk menyimpan data-data nama, password dan status user, dapat dilihat pada Gambar 4.5 dibawah ini.
Gambar 4.5. Gambar Tabel User Tabel user dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `user` (
`NIP` varchar(20) NOT NULL, `Nama` varchar(50) default NULL, `Password` varchar(50) default NULL, `Status` varchar(20) default NULL, PRIMARY KEY (`NIP`)
6. Tabel propinsi, berfungsi untuk menyimpan data-data propinsi, dapat dilihat pada Gambar 4.6 dibawah ini.
Gambar 4.6. Gambar Tabel Propinsi Tabel propinsi dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `propinsi` (
`Kd_Propinsi` varchar(4) NOT NULL, `Nama_Propinsi` varchar(45) NOT NULL, PRIMARY KEY (`Kd_Propinsi`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `propinsi`(`Kd_Propinsi`,`Nama_Propinsi`) values ('01','NANGGROE ACEH DARUSSALAM'),('02','SUMATERA UTARA'),('03','SUMETERA BARAT'),('04','RIAU'),('05','JAMBI'),('06','KEPULAUAN \nRIAU'),('07','BENGKULU'),('08','SUMATERA SELATAN'),('09','LAMPUNG'),('10','DKI \nJAKARTA'),('11','JAWA BARAT'),('12','BANTEN'),('13','JAWA TENGAH'),('14','DAERAH ISTIMEWA YOGYAKARTA'),('15','JAWA TENGAH'),('16','JAWA TIMUR'),('17','KALIMANTAN BARAT'),('18','KALIMANTAN TENGAH'),('19','KALIMANTAN SELATAN'),('20','KALIMANTAN TIMUR'),('21','BALI'),('22','SULAWESI
SELATAN'),('23','SULAWESI TENGGARA'),('24','SULAWESI TENGAH'),('25','SULAWESI
UTARA'),('26','GORONTALO'),('27','MALUKU
UTARA'),('28','NUSA TENGGARA BARAT'),('29','NUSA TENGGARA
TIMUR'),('30','MALUKU'),('31','IRIAN JAYA BARAT'),('32','PAPUA'),('33','KEPULAUAN BANGKA BELITUNG');
7. Tabel kabupaten, berfungsi untuk menyimpan data-data kabupaten, dapat dilihat pada Gambar 4.7 dibawah ini..
Gambar 4.7. Gambar Tabel Kabupaten Tabel kabupaten dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `kabupaten` (
`Kd_Kabupaten` varchar(20) NOT NULL, `Kd_Propinsi` varchar(4) NOT NULL, `Nama_Kabupaten` varchar(45) NOT NULL,
PRIMARY KEY (`Kd_Kabupaten`,`Kd_Propinsi`), KEY `Kd_Propinsi` (`Kd_Propinsi`),
CONSTRAINT `kabupaten_ibfk_1` FOREIGN KEY (`Kd_Propinsi`) REFERENCES `propinsi` (`Kd_Propinsi`) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE=InnoDB DEFAULT CHARSET=latin1;
8. Tabel kecamatan, berfungsi untuk menyimpan data-data kecamatan, dapat dilihat pada Gambar 4.8 dibawah ini..
Gambar 4.8. Gambar Tabel Kecamatan Tabel kecamatan dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `kecamatan` (
`Kd_Kecamatan` varchar(20) NOT NULL, `Kd_Kabupaten` varchar(20) NOT NULL, `Kd_Propinsi` varchar(4) NOT NULL, `Nama_Kecamatan` varchar(45) NOT NULL, `NIP` varchar(20) NOT NULL,
`Nama_Camat` varchar(50) NOT NULL,
PRIMARY KEY
(`Kd_Kecamatan`,`Kd_Kabupaten`,`Kd_Propinsi`),
KEY `Kd_Kabupaten` (`Kd_Kabupaten`,`Kd_Propinsi`),
CONSTRAINT `kecamatan_ibfk_1` FOREIGN KEY (`Kd_Kabupaten`, `Kd_Propinsi`) REFERENCES `kabupaten` (`Kd_Kabupaten`, `Kd_Propinsi`) ON DELETE CASCADE ON UPDATE CASCADE
9. Tabel kelurahan, berfungsi untuk menyimpan data-data kelurahan, dapat dilihat pada Gambar 4.9 dibawah ini..
Gambar 4.9. Gambar Tabel Kelurahan Tabel kelurahan dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `kelurahan` (
`Kd_Kelurahan` varchar(20) NOT NULL, `Kd_Kecamatan` varchar(20) NOT NULL, `Kd_Kabupaten` varchar(20) NOT NULL, `Kd_Propinsi` varchar(4) NOT NULL, `Nama_Kelurahan` varchar(45) NOT NULL, `Nama_lurah` varchar(50) NOT NULL,
PRIMARY KEY
(`Kd_Kelurahan`,`Kd_Kecamatan`,`Kd_Kabupaten`,`Kd_Propinsi` ),
KEY `Kd_Kecamatan`
(`Kd_Kecamatan`,`Kd_Kabupaten`,`Kd_Propinsi`),
CONSTRAINT `kelurahan_ibfk_1` FOREIGN KEY (`Kd_Kecamatan`, `Kd_Kabupaten`, `Kd_Propinsi`) REFERENCES `kecamatan` (`Kd_Kecamatan`, `Kd_Kabupaten`, `Kd_Propinsi`) ON DELETE CASCADE ON UPDATE CASCADE
10. Tabel pedukuhan, berfungsi untuk menyimpan data-data pedukuhan, dapat dilihat pada Gambar 4.10 dibawah ini..
Gambar 4.10. Gambar Tabel Pedukuhan Tabel pedukuhan dibuat dengan sintak SQL sebagai berikut:
CREATE TABLE `pedukuhan` (
`Kd_Pedukuhan` varchar(20) NOT NULL, `Kd_Kelurahan` varchar(20) NOT NULL, `Kd_Kecamatan` varchar(20) NOT NULL, `Kd_Kabupaten` varchar(20) NOT NULL, `Kd_Propinsi` varchar(4) NOT NULL, `Nama_Pedukuhan` varchar(45) NOT NULL,
PRIMARY KEY (`Kd_Pedukuhan`,`Kd_Kelurahan`,`Kd_Kecamatan`,`Kd_Kabupaten `,`Kd_Propinsi`), KEY `Kd_Kelurahan` (`Kd_Kelurahan`,`Kd_Kecamatan`,`Kd_Kabupaten`,`Kd_Propinsi` ),
CONSTRAINT `pedukuhan_ibfk_1` FOREIGN KEY (`Kd_Kelurahan`, `Kd_Kecamatan`, `Kd_Kabupaten`, `Kd_Propinsi`) REFERENCES `kelurahan` (`Kd_Kelurahan`, `Kd_Kecamatan`, `Kd_Kabupaten`, `Kd_Propinsi`) ON DELETE CASCADE ON UPDATE CASCADE
11. Tabel agama, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data agama, dapat dilihat pada Gambar 4.11 dibawah ini.
Gambar 4.11. Gambar Tabel Agama Tabel agama dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `agama` (
`Kd_Agama` int(10) NOT NULL, `Agama` varchar(20) NOT NULL, PRIMARY KEY (`Kd_Agama`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `agama`(`Kd_Agama`,`Agama`) values (1,'ISLAM'),(2,'KRISTEN'),(3,'KATHOLIK'),(4,'HINDU'),(5 ,'BUDHA');
12. Tabel akseptor, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data akseptor, dapat dilihat pada Gambar 4.12 dibawah ini.
Gambar 4.12. Gambar Tabel Akseptor Tabel akseptor dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `akseptor` (
`Kd_Akseptor` int(10) NOT NULL,
`Akseptor_KB` varchar(20) default NULL, PRIMARY KEY (`Kd_Akseptor`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `akseptor`(`Kd_Akseptor`,`Akseptor_KB`) values (1,'-'),(2,'IUD'),(3,'KONDOM'),(4,'PIL'),(5,'SUNTIK'),(6,'SU SUK'),(7,'VASEKTOMI'),(8,'TUBEKTOMI'),(9,'TISSUE'),(10, 'LAIN2');
13. Tabel gol_darah, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data golongan darah, dapat dilihat pada Gambar 4.13 dibawah ini.
Gambar 4.13. Gambar Tabel Gol_Darah Tabel gol_darah dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `gol_darah` (
`Kd_Golongan` int(10) NOT NULL,
`Golongan_Darah` varchar(10) default NULL, PRIMARY KEY (`Kd_Golongan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `gol_darah`(`Kd_Golongan`,`Golongan_Darah`) values
14. Tabel hubungan_keluarga, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data hubungan_keluarga, dapat dilihat pada Gambar 4.14 dibawah ini.
Gambar 4.14. Gambar Tabel Hubungan_Keluarga Tabel hubungan_keluarga dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `hubungan_keluarga` ( `Kd_Hub` int(10) NOT NULL,
`Hubungan_Keluarga` varchar(30) default NULL, PRIMARY KEY (`Kd_Hub`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `hubungan_keluarga`(`Kd_Hub`,`Hubungan_Keluarga`)
values (1,'KEPALA KELUARGA'),(2,'SUAMI'),(3,'ISTRI'),(4,'ANAK
KANDUNG'),(5,'ANAK TIRI'),(6,'ANAK ANGKAT'),(7,'ORANG TUA'),(8,'MERTUA'),(9,'MENANTU'),(10,'CUCU'),(11,'FAMIL I'),(12,'SAUDARA
15. Tabel kelainan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data kelainan, dapat dilihat pada Gambar 4.15 dibawah ini.
Gambar 4.15. Gambar Tabel Kelainan Tabel kelainan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `kelainan` (
`Kd_Kelainan` int(10) NOT NULL,
`Kelainan_Khusus` varchar(30) default NULL, PRIMARY KEY (`Kd_Kelainan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `kelainan`(`Kd_Kelainan`,`Kelainan_Khusus`) values
(1,'-'),(2,'CACAT FISIK'),(3,'CACAT NETRA/BUTA'),(4,'CACAT RUNGU/WICARA'),(5,'CACAT
16. Tabel kewarganegaraan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data kewarganegaraan, dapat dilihat pada Gambar 4.16 dibawah ini.
Gambar 4.16. Gambar Tabel Kewarganegaraan Tabel kewarganegaraan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `kewarganegaraan` (
`Kd_Kewarganegaraan` varchar(10) NOT NULL, `Kewarganegaraan` varchar(20) default NULL, PRIMARY KEY (`Kd_Kewarganegaraan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `kewarganegaraan`(`Kd_Kewarganegaraan`,`Kewarganegaraan
`) values ('1','WNI'),('2','WNA'),('3','WNI KETURUNAN');
17. Tabel pekerjaan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data pekerjaan, dapat dilihat pada Gambar 4.17 dibawah ini.
Gambar 4.17. Gambar Tabel Pekerjaan Tabel pekerjaan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `pekerjaan` (
`Kd_Pekerjaan` int(10) NOT NULL, `Pekerjaan` varchar(30) NOT NULL, PRIMARY KEY (`Kd_Pekerjaan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `pekerjaan`(`Kd_Pekerjaan`,`Pekerjaan`)
values (1,'BELUM BEKERJA'),(2,'PETANI'),(3,'NELAYAN'),(4,'PEDAGANG'),(5,
'PEG. NEGERI SIPIL'),(6,'ANGGOTA TNI-AD'),(7,'ANGGOTA AL'),(8,'ANGGOTA TNI-AU'),(9,'KEPOLISIAN'),(10,'PURNAWIRAWAN'),(11,'PENSIUNA N'),(12,'PEG. SWASTA'),(13,'WIRASWASTA'),(14,'BURUH'),(15,'PEMBANTU') ,(16,'PELAJAR'),(17,'MAHASISWA'),(18,'IBU RMH TANGGA'),(19,'DOKTER'),(20,'GURU/DOSEN'),(21,'TENAGA
18. Tabel pendidikan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data pendidikan, dapat dilihat pada Gambar 4.18 dibawah ini.
Gambar 4.18. Gambar Tabel Pendidikan Tabel pendidikan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `pendidikan` (
`Kd_Pendidikan` int(10) NOT NULL, `Pendidikan` varchar(45) default NULL, PRIMARY KEY (`Kd_Pendidikan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `pendidikan`(`Kd_Pendidikan`,`Pendidikan`)
values (1,'TIDAK SEKOLAH'),(2,'SD/SEDERAJAT'),(3,'SLTP/SEDERAJAT'),(4,'S
LTA/SEDERAJAT'),(5,'AKADEMI'),(6,'UNIVERSITAS'),(7,'PAS
CA SARJANA'),(8,'NGANGGUR'),(9,'AKADEMI/DIPLOMA III/SARJANA MUDA');
19. Tabel status_pendidikan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data status pendidikan, dapat dilihat pada Gambar 4.19 dibawah ini.
Gambar 4.19. Gambar Tabel Status_Pendidikan Tabel status_pendidikan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `status_pendidikan` ( `Kd_Status_Pend` int(10) NOT NULL,
`Status_Pendidikan` varchar(30) default NULL, PRIMARY KEY (`Kd_Status_Pend`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `status_pendidikan`(`Kd_Status_Pend`,`Status_Pendidikan
`) values (1,'TAMAT'),(2,'BELUM TAMAT'),(3,'TIDAK TAMAT'),(4,'BELUM SEKOLAH');
20. Tabel status_perkawinan, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data status perkawinan, dapat dilihat pada Gambar 4.20 dibawah ini.
Gambar 4.20. Gambar Tabel Status_Perkawinan Tabel status_perkawinan dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `status_perkawinan` ( `Kd_Perkawinan` int(10) NOT NULL,
`Status_Perkawinan` varchar(20) default NULL, PRIMARY KEY (`Kd_Perkawinan`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
insert into `status_perkawinan`(`Kd_Perkawinan`,`Status_Perkawinan`
) values (1,'BELUM KAWIN'),(2,'KAWIN'),(3,'DUDA'),(4,'JANDA');
21. Tabel print_p, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data penduduk yang akan di print, dapat dilihat pada Gambar 4.21 dibawah ini.
Gambar 4.21. Gambar Tabel Print_P Tabel print_p dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE print_p ( NIK VARCHAR(20) NOT NULL, Nama VARCHAR(50) NOT NULL, Kelamin VARCHAR(2) NOT NULL,
Kewarganegaraan VARCHAR(10) NOT NULL, Dok_Imigrasi VARCHAR(20) NOT NULL, Tempat_Lahir VARCHAR(50) NOT NULL, Tanggal_Lahir DATE NOT NULL,
Gol_Darah VARCHAR(2) NOT NULL, Agama VARCHAR(20) NOT NULL,
Status_Perkawinan VARCHAR(30) NOT NULL, Pendidikan_Terakhir VARCHAR(45) NOT NULL, Jenis_Pekerjaan VARCHAR(50) NOT NULL, Hub_Keluarga VARCHAR(30) NOT NULL, Nama_Ortu VARCHAR(50) NOT NULL, Akseptor_KB VARCHAR(30) NOT NULL, Kelainan_Khusus VARCHAR(30) NOT NULL,
PRIMARY KEY(NIK),
INDEX NIK(NIK),FOREIGN KEY(NIK) REFERENCES penduduk(NIK)
ON DELETE CASCADE ON UPDATE CASCADE );
22. Tabel print_kk, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data Kartu Keluarga yang akan di print, dapat dilihat pada Gambar 4.22 dibawah ini.
Gambar 4.22. Gambar Tabel Print_KK Tabel print_kk dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE print_kk (
No_KK VARCHAR(20) NOT NULL, Kelurahan VARCHAR(30) NOT NULL, Pedukuhan VARCHAR(30) NOT NULL, RT VARCHAR(3) NOT NULL,
RW VARCHAR(3) NOT NULL,
Alamat VARCHAR(100) NOT NULL, KodePost VARCHAR(6) NOT NULL,
Tanggal_Permohonan_KK VARCHAR(20) NOT NULL, Status VARCHAR(20) NOT NULL DEFAULT "Waiting", PRIMARY KEY(No_KK), FOREIGN KEY(No_KK)
REFERENCES kartu_keluarga(No_KK) ON DELETE CASCADE
ON UPDATE CASCADE )
23. Tabel print_ktp, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data Kartu Tanda Penduduk yang akan di print, dapat dilihat pada Gambar 4.23 dibawah ini.
Gambar 4.23. Gambar Tabel Print_KTP Tabel print_ktp dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE print_ktp ( NIK VARCHAR(20) NOT NULL, No_KK VARCHAR(20) NOT NULL, Nama VARCHAR(50) NOT NULL,
Tanggal_Permohonan_KTP DATE NOT NULL, Foto LONGBLOB NOT NULL,
Tanggal_Habis_KTP DATE NOT NULL,
Status VARCHAR(20) NOT NULL DEFAULT "Waiting", PRIMARY KEY(NIK, No_KK),
FOREIGN KEY(No_KK, NIK)
REFERENCES kartu_tanda_penduduk(No_KK, NIK) ON DELETE NO ACTION
ON UPDATE NO ACTION )TYPE=InnoDB;
24. Tabel kelamin, berfungsi sebagai tabel dinamis yang digunakan untuk menyimpan data-data kelamin, dapat dilihat pada Gambar 4.24 dibawah ini.
Gambar 4.24. Gambar Tabel Kelamin Tabel kelamin dibuat dengan sintak SQL sebagai berikut :
CREATE TABLE `kelamin` (
`Kd_Kelamin` varchar(10) NOT NULL,
`Jenis_Kelamin` varchar(20) default NULL, PRIMARY KEY (`Kd_Kelamin`)
insert into `kelamin`(`Kd_Kelamin`,`Jenis_Kelamin`) values ('L','LAKI-LAKI'),('P','PEREMPUAN');