Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*==============================================================*/
- /* DBMS name: ORACLE Version 10g */
- /* Created on: 14/05/2016 08.00.21 */
- /*==============================================================*/
- ALTER TABLE KELAHIRAN
- DROP CONSTRAINT FK_KELAHIRA_MEMBUAT_KELUARGA;
- ALTER TABLE KELUARGA
- DROP CONSTRAINT FK_KELUARGA_MENEMPATI_WILAYAH;
- ALTER TABLE KEMATIAN
- DROP CONSTRAINT FK_KEMATIAN_MENGALAMI_PENDUDUK;
- ALTER TABLE PENDUDUK
- DROP CONSTRAINT FK_PENDUDUK_MEMBENTUK_KELUARGA;
- ALTER TABLE PENDUDUK
- DROP CONSTRAINT FK_PENDUDUK_MENGALAMI_KEMATIAN;
- DROP INDEX MEMBUAT_FK;
- DROP TABLE KELAHIRAN CASCADE CONSTRAINTS;
- DROP INDEX MENEMPATI_FK;
- DROP TABLE KELUARGA CASCADE CONSTRAINTS;
- DROP INDEX MENGALAMI_FK;
- DROP TABLE KEMATIAN CASCADE CONSTRAINTS;
- DROP INDEX MENGALAMI2_FK;
- DROP INDEX MEMBENTUK_FK;
- DROP TABLE PENDUDUK CASCADE CONSTRAINTS;
- DROP TABLE WILAYAH CASCADE CONSTRAINTS;
- /*==============================================================*/
- /* Table: KELAHIRAN */
- /*==============================================================*/
- CREATE TABLE KELAHIRAN (
- NIK CHAR(16) NOT NULL,
- NO_LAHIR CHAR(10) NOT NULL,
- TEMPAT_LAHIR VARCHAR2(16) NOT NULL,
- HARI_LAHIR VARCHAR2(8) NOT NULL,
- TANGGAL_LAHIR DATE NOT NULL,
- KETERANGAN VARCHAR2(8) NOT NULL,
- CONSTRAINT PK_KELAHIRAN PRIMARY KEY (NIK, NO_LAHIR)
- );
- /*==============================================================*/
- /* Index: MEMBUAT_FK */
- /*==============================================================*/
- CREATE INDEX MEMBUAT_FK ON KELAHIRAN (
- NIK ASC
- );
- /*==============================================================*/
- /* Table: KELUARGA */
- /*==============================================================*/
- CREATE TABLE KELUARGA (
- NIK CHAR(16) NOT NULL,
- KODE_POS CHAR(5),
- NO_KELUARGA CHAR(16) NOT NULL,
- STATUS VARCHAR2(16) NOT NULL,
- JALAN VARCHAR2(32) NOT NULL,
- RT CHAR(2) NOT NULL,
- RW CHAR(2) NOT NULL,
- CONSTRAINT PK_KELUARGA PRIMARY KEY (NIK)
- );
- /*==============================================================*/
- /* Index: MENEMPATI_FK */
- /*==============================================================*/
- CREATE INDEX MENEMPATI_FK ON KELUARGA (
- KODE_POS ASC
- );
- /*==============================================================*/
- /* Table: KEMATIAN */
- /*==============================================================*/
- CREATE TABLE KEMATIAN (
- NIK CHAR(16) NOT NULL,
- KTP CHAR(16) NOT NULL,
- NO_KEMATIAN CHAR(10) NOT NULL,
- TEMPAT VARCHAR2(64) NOT NULL,
- HARI VARCHAR2(8) NOT NULL,
- TGL DATE NOT NULL,
- SEBAB VARCHAR2(64) NOT NULL,
- CONSTRAINT PK_KEMATIAN PRIMARY KEY (NIK, KTP, NO_KEMATIAN)
- );
- /*==============================================================*/
- /* Index: MENGALAMI_FK */
- /*==============================================================*/
- CREATE INDEX MENGALAMI_FK ON KEMATIAN (
- NIK ASC,
- KTP ASC
- );
- /*==============================================================*/
- /* Table: PENDUDUK */
- /*==============================================================*/
- CREATE TABLE PENDUDUK (
- NIK CHAR(16) NOT NULL,
- KTP CHAR(16) NOT NULL,
- KEM_NIK CHAR(16),
- KEM_KTP CHAR(16),
- NO_KEMATIAN CHAR(10),
- NAMA VARCHAR2(32) NOT NULL,
- JK VARCHAR2(12) NOT NULL,
- AGAMA VARCHAR2(16) NOT NULL,
- PENDIDIKAN VARCHAR2(3),
- PEKERJAAN VARCHAR2(16),
- PENGHASILAN NUMBER,
- CONSTRAINT PK_PENDUDUK PRIMARY KEY (NIK, KTP)
- );
- /*==============================================================*/
- /* Index: MEMBENTUK_FK */
- /*==============================================================*/
- CREATE INDEX MEMBENTUK_FK ON PENDUDUK (
- NIK ASC
- );
- /*==============================================================*/
- /* Index: MENGALAMI2_FK */
- /*==============================================================*/
- CREATE INDEX MENGALAMI2_FK ON PENDUDUK (
- NIK ASC,
- KTP ASC,
- NO_KEMATIAN ASC
- );
- /*==============================================================*/
- /* Table: WILAYAH */
- /*==============================================================*/
- CREATE TABLE WILAYAH (
- KODE_POS CHAR(5) NOT NULL,
- KELURAHAN VARCHAR2(32) NOT NULL,
- KECAMATAN VARCHAR2(32) NOT NULL,
- KABUPATEN VARCHAR2(32) NOT NULL,
- PROVINSI VARCHAR2(32) NOT NULL,
- CONSTRAINT PK_WILAYAH PRIMARY KEY (KODE_POS)
- );
- ALTER TABLE KELAHIRAN
- ADD CONSTRAINT FK_KELAHIRA_MEMBUAT_KELUARGA foreign KEY (NIK)
- references KELUARGA (NIK);
- ALTER TABLE KELUARGA
- ADD CONSTRAINT FK_KELUARGA_MENEMPATI_WILAYAH foreign KEY (KODE_POS)
- references WILAYAH (KODE_POS);
- ALTER TABLE KEMATIAN
- ADD CONSTRAINT FK_KEMATIAN_MENGALAMI_PENDUDUK foreign KEY (NIK, KTP)
- references PENDUDUK (NIK, KTP);
- ALTER TABLE PENDUDUK
- ADD CONSTRAINT FK_PENDUDUK_MEMBENTUK_KELUARGA foreign KEY (NIK)
- references KELUARGA (NIK);
- ALTER TABLE PENDUDUK
- ADD CONSTRAINT FK_PENDUDUK_MENGALAMI_KEMATIAN foreign KEY (NIK, KTP, NO_KEMATIAN)
- references KEMATIAN (NIK, KTP, NO_KEMATIAN);
- /*modul 4*/
- INSERT ALL
- INTO wilayah VALUES('61111','Tlogopatut','Gresik','Gresik','Jawa Timur')
- INTO wilayah VALUES('61112','Sidokumpul','Gresik','Gresik','Jawa Timur')
- INTO wilayah VALUES('61113','Trate','Gresik','Gresik','Jawa Timur')
- INTO wilayah VALUES('61114','Bedilan','Gresik','Gresik','Jawa Timur')
- INTO wilayah VALUES('61121','Kebomas','Kebomas','Gresik','Jawa Timur')
- INTO wilayah VALUES('61122','Randuagung','Kebomas','Gresik','Jawa Timur')
- INTO wilayah VALUES('61123','Segoromadu','Kebomas','Gresik','Jawa Timur')
- INTO wilayah VALUES('61124','Giri','Kebomas','Gresik','Jawa Timur')
- INTO wilayah VALUES('61151','Yosowilangun','Manyar','Gresik','Jawa Timur')
- INTO wilayah VALUES('61152','Suci','Manyar','Gresik','Jawa Timur')
- SELECT*FROM dual
- INSERT ALL
- INTO keluarga VALUES('3525100301770001','61111','3525101301970001','Kepala Keluarga','Jl.Surabaya no 1','01','01')
- INTO keluarga VALUES('3525100302770001','61112','3525101301970002','Kepala Keluarga','Jl.Malang no 2','02','09')
- INTO keluarga VALUES('3525100303770001','61113','3525101301970003','Kepala Keluarga','Jl.Sidoarjo no 3','03','08')
- INTO keluarga VALUES('3525100304770001','61114','3525101301970004','Kepala Keluarga','Jl.Pasuruan no 4','04','07')
- INTO keluarga VALUES('3525100305770001','61121','3525101301970005','Kepala Keluarga','Jl.Lamongan no 5','05','06')
- INTO keluarga VALUES('3525100306770001','61122','3525101301970006','Kepala Keluarga','Jl.Jombang no 6','06','05')
- INTO keluarga VALUES('3525100307770001','61123','3525101301970007','Kepala Keluarga','Jl.Kediri no 7','07','04')
- INTO keluarga VALUES('3525100308770001','61123','3525101301970008','Kepala Keluarga','Jl.Tuban no 8','08','03')
- INTO keluarga VALUES('3525100309770001','61151','3525101301970009','Kepala Keluarga','Jl.Banyuwangi no 9','09','02')
- INTO keluarga VALUES('3525100310770001','61152','3525101301970010','Kepala Keluarga','Jl.Purbalingga no 10','01','01')
- SELECT*FROM dual
- INSERT ALL
- INTO kelahiran VALUES('3525100301770001','3525010001','Gresik','Rabu',TO_DATE('03-01-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100302770001','3525010002','Gresik','Selasa',TO_DATE('03-02-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100303770001','3525010003','Gresik','Senin',TO_DATE('03-03-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100304770001','3525010004','Gresik','Minggu',TO_DATE('03-04-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100305770001','3525010005','Gresik','Sabtu',TO_DATE('03-05-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100306770001','3525010006','Gresik','Jumat',TO_DATE('03-06-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100307770001','3525010007','Gresik','Kamis',TO_DATE('03-07-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100308770001','3525010008','Gresik','Rabu',TO_DATE('03-08-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100309770001','3525010009','Gresik','Selasa',TO_DATE('03-09-1977','DD-MM-YYYY'),'Normal')
- INTO kelahiran VALUES('3525100310770001','3525010010','Gresik','Senin',TO_DATE('03-10-1977','DD-MM-YYYY'),'Normal')
- SELECT*FROM dual
- INSERT ALL
- INTO penduduk VALUES('3525100301770001','3525100301770001','','Mahardika','Laki-Laki','Islam','S-1','Programmer',3000000)
- INTO penduduk VALUES('3525100302770001','3525100302770001','','Aji','Laki-Laki','Islam','S-1','Db Admin',3000000)
- INTO penduduk VALUES('3525100303770001','3525100303770001','','Pangestu','Laki-Laki','Islam','S-1','Sys Analys',3000000)
- INTO penduduk VALUES('3525100304770001','3525100304770001','','Taufiq','Laki-Laki','Islam','S-1','Web Design',3500000)
- INTO penduduk VALUES('3525100305770001','3525100305770001','','Kriswanto','Laki-Laki','Islam','S-1','Web Analys',3500000)
- INTO penduduk VALUES('3525100306770001','3525100306770001','','Fikri','Laki-Laki','Islam','S-1','Dosen',3500000)
- INTO penduduk VALUES('3525100307770001','3525100307770001','','Hendika','Laki-Laki','Islam','S-1','Guru',3750000)
- INTO penduduk VALUES('3525100308770001','3525100308770001','','Pratama','Laki-Laki','Islam','S-1','Wiraswasta',3750000)
- INTO penduduk VALUES('3525100309770001','3525100309770001','','Bagas','Laki-Laki','Islam','S-1','SE',3750000)
- INTO penduduk VALUES('3525100310770001','3525100310770001','','Zamani','Laki-Laki','Islam','S-1','APP Tester',4000000)
- SELECT*FROM dual
- INSERT ALL
- INTO kematian VALUES('3525100301770001','3525100301770001','3525101111','Gresik','Senin',TO_DATE('03-10-2042','DD-MM-YYYY'),'Tenggelam')
- INTO kematian VALUES('3525100302770001','3525100302770001','3525101112','Gresik','Selasa',TO_DATE('03-09-2042','DD-MM-YYYY'),'Kaget')
- INTO kematian VALUES('3525100303770001','3525100303770001','3525101113','Gresik','Rabu',TO_DATE('03-08-2042','DD-MM-YYYY'),'Jatuh dari lantai 2')
- INTO kematian VALUES('3525100304770001','3525100304770001','3525101114','Gresik','Kamis',TO_DATE('03-07-2042','DD-MM-YYYY'),'Muntaber')
- INTO kematian VALUES('3525100305770001','3525100305770001','3525101115','Gresik','Jumat',TO_DATE('03-06-2042','DD-MM-YYYY'),'Mencret')
- INTO kematian VALUES('3525100306770001','3525100306770001','3525101116','Gresik','Sabtu',TO_DATE('03-05-2042','DD-MM-YYYY'),'Maag')
- INTO kematian VALUES('3525100307770001','3525100307770001','3525101117','Gresik','Minggu',TO_DATE('03-04-2042','DD-MM-YYYY'),'Penyakit Kulit')
- INTO kematian VALUES('3525100308770001','3525100308770001','3525101118','Gresik','Senin',TO_DATE('03-03-2042','DD-MM-YYYY'),'Kelaparan')
- INTO kematian VALUES('3525100309770001','3525100309770001','3525101119','Gresik','Selasa',TO_DATE('03-02-2042','DD-MM-YYYY'),'Ledakan')
- INTO kematian VALUES('3525100310770001','3525100310770001','3525101120','Gresik','Rabu',TO_DATE('03-01-2042','DD-MM-YYYY'),'Keracunan')
- SELECT*FROM dual
- SELECT*FROM kematian
- SELECT*FROM kelahiran
- SELECT*FROM penduduk
- SELECT*FROM keluarga
- SELECT*FROM wilayah
- UPDATE penduduk SET pendidikan='S-1', pekerjaan='Pegawai Swasta' WHERE nik='3525100305770001'
- DELETE wilayah WHERE kode_pos='61151'
- ALTER TABLE penduduk
- MODIFY penghasilan NUMBER
- DROP TABLE wilayah
- /*modul 5*/
- SELECT SUM(penghasilan) FROM penduduk
- SELECT MIN(penghasilan) FROM penduduk
- SELECT MAX(penghasilan) FROM penduduk
- SELECT AVG(penghasilan) FROM penduduk
- SELECT penghasilan,COUNT(*) FROM penduduk GROUP BY penghasilan
- /*modul 6*/
- SELECT penghasilan FROM penduduk GROUP BY penghasilan HAVING penghasilan > 3500000
- SELECT ktp,nama FROM penduduk WHERE ktp>='3525100308770001'
- SELECT nama FROM penduduk WHERE nama LIKE'%i%'
- SELECT nama FROM penduduk WHERE nama NOT LIKE'%i%'
- SELECT nama,ktp FROM penduduk WHERE ktp IN('3525100306770001','3525100307770001')
- SELECT nama,ktp FROM penduduk WHERE ktp BETWEEN '3525100301770001' AND '3525100304770001'
- /*modul 7*/
- CREATE TABLE RECORD(
- nik CHAR(16),
- pendidikanOld VARCHAR(3),
- pekerjaanOld VARCHAR(16),
- penghasilanOld NUMBER,
- pendidikanNew VARCHAR(3),
- pekerjaanNew VARCHAR(16),
- penghasilanNew NUMBER,
- tgl DATE
- )
- CREATE OR REPLACE TRIGGER "UPDATE_PEND"
- after UPDATE ON penduduk FOR each ROW
- BEGIN
- INSERT INTO RECORD VALUES(:NEW.nik,:old.pendidikan,:old.pekerjaan,,:old.penghasilan:NEW.pendidikan,:NEW.pekerjaan,:NEW.penghasilan,CURRENT_DATE);
- END;
- UPDATE penduduk SET pendidikan='S-1', pekerjaan='Pegawai Swasta' WHERE nik<='3525100305770001'
- UPDATE penduduk SET pendidikan='S-2', pekerjaan='Pegawai Negeri' WHERE nik>'3525100305770001'
- CREATE OR REPLACE TRIGGER "INSERT_KEM"
- after INSERT ON kematian FOR each ROW
- BEGIN
- UPDATE penduduk SET no_kematian=:NEW.no_kematian WHERE nik=:NEW.nik;
- END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement