2. Merancang basis data yang dilengkapi dengan batasan hak akses
3.9 Perancangan Basis Data
3.9.3 Perancangan Fisikal
3.9.3.2 Perancangan relational basis data
Tahap ini bertujuan untuk memutuskan bagaimana caranya menggambarkan identitas relasi dasar dalam model data logikal global dalam target DBMS. Hasil dari tahap ini adalah:
Stok Barang
Domain KodeBrg variabel length character string, length 7 Domain NamaBrg variabel length character string, length 30 Domain Satuan variabel length character string, length 6 Domain JmlStok int
Domain HargaBeli variabel money, length 8 Domain HargaJual variabel money, length 8 DomainStokMin int
StokBarang (
KodeBrg NOT NULL,
NamaBrg NOT NULL,
JenisBrg NOT NULL,
JmlStok NOT NULL,
HargaBeli NOT NULL,
Harga Jual NOT NULL,
StokMin NOT NULL,
Primary key (KodeBrg),
Pelanggan
Domain KodePlg variabel length character string, length 7 Domain NamaPlg variabel length character string, length 30 Domain NamaKontak variabel length character string, length 30 Domain AlmtPlg variabel length character string, length 50 Domain KodePos variabel length character string, length 5 Domain Kota variabel length character string, length 30 Pelanggan (
KodePlg NOT NULL,
NamaPlg NOT NULL,
NamaKontak NOT NULL,
AlmtPlg NOT NULL,
KodePos NOT NULL,
Kota NOT NULL,
Primary key (KodePlg)
)
TeleponPlg
Domain TelpPlg variabel length character string, length 15 Domain KodePlg variabel length character string, length 7 TeleponPlg(
TelpPlg NOT NULL
Foreign Key KodePlg references Pelanggan (KodePlg)
ON UPDATE CASCADE ON DELETE NO ACTION
)
FaksPlg
Domain FaksPlg variabel length character string, length 15 Domain KodePlg variabel length character string, length 7 FaksPlg(
FaksPlg NOT NULL
KodePlg NOT NULL,
Primary key (FaksPlg),
Foreign Key KodePlg references Pelanggan (KodePlg)
ON UPDATE CASCADE ON DELETE NO ACTION
)
Pemasok
Domain KodePms variabel length character string, length 7 Domain NamaPms variabel length character string, length 30 Domain NamaKontak variabel length character string, length 30 Domain AlmtPms variabel length character string, length 50 Domain KodePos variabel length character string, length 5 Domain Kota variabel length character string, length 30 Pemasok (
KodePms NOT NULL,
NamaKontak NOT NULL,
AlmtPms NOT NULL,
KodePos NOT NULL,
Kota NOT NULL,
Primary key (KodePms)
)
TeleponPms
Domain TelpPms variabel length character string, length 15 Domain KodePms variabel length character string, length 7 TeleponPlg(
TelpPms NOT NULL
KodePms NOT NULL,
Primary key (TelpPms),
Foreign Key KodePms references Pemasok (KodePms)
ON UPDATE CASCADE ON DELETE NO ACTION
)
FaksPms
Domain FaksPms variabel length character string, length 15 Domain KodePms variabel length character string, length 7 FakPms (
Primary key (FaksPms),
Foreign Key KodePms references Pemasok (KodePms)
ON UPDATE CASCADE ON DELETE NO ACTION)
Pegawai
Domain KodePgw variabel length character string, length 7 Domain NamaPgw variabel length character string, length 30 Domain JenisKel variabel length character string, length 1 Domain TglLahir variabel date, format short date
Domain AlmtPgw variabel length character string, length 50 Domain Jabatan variabel length character string, length 20 Domain Divisi variabel length character string, length 20 Pegawai (
KodePgw NOT NULL,
NamaPgw NOT NULL,
JenisKel NOT NULL,
TglLahir NOT NULL,
AlmtPgw NOT NULL,
Jabatan NOT NULL,
Divisi NOT NULL,
Primary key (KodePgw),
Pembelian
Domain NoNotaBeli variabel length character string, length 7 Domain NoOrdBeli variabel length character string, length 7 Domain TglNotaBeli variabel date, format short date
Domain JnsPembelian variabel length character string, length 1 Pembelian (
NoNotaBeli NOT NULL,
NoOrdBeli NOT NULL,
TglNotaBeli NOT NULL, JnsPembelian NOT NULL, Primary key (NoNotaBeli),
Foreign Key NoOrdBeli references OrdPembelian (NoOrdBeli ) ON UPDATE CASCADE ON DELETE NOACTION)
Penjualan
Domain NoFakJual variabel length character string, length 7 Domain NoOrdJual variabel length character string, length 7 Domain TglFakJual variabel date, format short date
Domain JnsPenjualan variabel length character string, length 1 Penjualan(
NoFakJual NOT NULL,
NoOrd Jual NOT NULL,
Primary key (NoFakJual),
Foreign Key NoOrdJual references OrdPenjualan (NoOrdJual ) ON UPDATE CASCADE ON DELETE NO ACTION
)
Pembelian Detil
Domain NoNotaBeli variabel length character string, length 7 Domain KodeBrg variabel length character string, length 7 Domain HargaBeli variabel money, length 8
Domain Kuantitas variabel length character string, length 6 Domain TotalBeli variabel money, length 8
Pembelian Detil (
NoNotaBeli NOT NULL,
KodeBrg NOT NULL,
HargaBeli NOT NULL,
Kuantitas NOT NULL,
TotalBeli NOT NULL,
Primary key (NoNotaBeli, KodeBrg),
Foreign Key NoNotaBeli references Pembelian ( NoNotaBeli ) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KodeBrg references StokBrg ( KodeBrg )
ON UPDATE CASCADE ON DELETE NO ACTION
Penjualan Detil
Domain NoFakJual variabel length character string, length 7 Domain KodeBrg variabel length character string, length 7 Domain HargaJual variabel money, length 8
Domain Kuantitas variabel length character string, length 6 Domain TotalJual variabel money, length 8
Penjualan Detil (
NoFakJual NOT NULL,
KodeBrg NOT NULL,
HargaJual NOT NULL,
Kuantitas NOT NULL,
TotalJual NOT NULL,
Primary key (NoFakJual, KodeBrg),
Foreign Key NoFakJual references Penjualan (NoFakJual)
ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KodeBrg references StokBarang (KodeBrg)
ON UPDATE CASCADE ON DELETE NO ACTION
)
Retur Pembelian
Domain NoReturBeli variabel length character string, length 7 Domain NoNotaBeli variabel length character string, length 7 Domain TglReturBeli variabel date, format short date
NoReturBeli NOT NULL, NoNotaBeli NOT NULL, TglReturBeli NOT NULL, Primary key (NoReturBeli),
Foreign Key NoNotaBeli references Pembelian (NoNotaBeli ) ON UPDATE CASCADE ON DELETE NO ACTION
)
Retur Pembelian Detil
Domain NoReturBeli variabel length character string, length 7 Domain KodeBrg variabel length character string, length 7 Domain Kuantitas variabel length character string, length 6 Domain Keterangan variabel length character string, length 30 Retur Pembelian Detil (
NoReturBeli NOT NULL,
KodeBrg NOT NULL,
Kuantitas NOT NULL,
Keterangan NOT NULL, Primary key (NoReturBeli),
Foreign Key KodeBrg references StokBrg ( KodeBrg )
ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key NoReturBeli references Retur Pembelian (NoReturBeli )
Retur Penjualan
Domain NoReturJual variabel length character string, length 7 Domain NoFakturJual variabel length character string, length 7 Domain TglReturJual variabel date, format short date
Retur Penjualan (
NoReturJual NOT NULL, NoFakturJual NOT NULL, TglReturJual NOT NULL, Primary key (NoReturJuali),
Foreign Key NoFakJual references Penjualan (NoFakJual )
ON UPDATE CASCADE ON DELETE NO ACTION
)
Retur Penjualan Detil
Domain NoReturJual variabel length character string, length 7 Domain KodeBrg variabel length character string, length 7 Domain Kuantitas variabel length character string, length 6 Domain Keterangan variabel length character string, length 30 Retur Penjualan Detil(
NoReturJual NOT NULL,
KodeBrg NOT NULL,
Kuantitas NOT NULL,
Foreign Key KodeBrg references StokBrg ( KodeBrg )
ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key NoReturJual references Retur Penjualan (NoReturJual )
ON UPDATE CASCADE ON DELETE NO ACTION)
Hutang
Domain KodeHut variabel length character string, length 7 Domain NoNotaBeli variabel length character string, length 7 Domain TglJthTempo variabel date, format short date
Domain TotalHut variabel money, length 6
Domain Keterangan variabel length character string, length 50 Hutang (
KodeHut NOT NULL,
NoNotaBeli NOT NULL, TglJthTempo NOT NULL,
TotalHut NOT NULL,
Keterangan NOT NULL, Primary key (KodeHut),
Foreign Key NoNotaBeli references Pembelian ( NoNotaBeli ) ON UPDATE CASCADE ON DELETE NO ACTION
Piutang
Domain KodePiut variabel length character string, length 7 Domain NoFakJual variabel length character string, length 7 Domain TglJthTempo variabel date, format short date
Domain TotalPiut variabel money, length 6
Domain Keterangan variabel length character string, length 50 Piutang (
KodePiut NOT NULL,
NoFakJual NOT NULL,
TglJthTempo NOT NULL,
TotalPiut NOT NULL,
Keterangan NOT NULL, Primary key (KodePiut),
Foreign Key NoFakJual references Penjualan ( NoFakJual )
ON UPDATE CASCADE ON DELETE NO ACTION
)
OrdPembelian
Domain NoOrdBeli variabel length character string, length 7 Domain TglOrdBeli variabel date, format short date
Domain KodePgw variabel length character string, length 7 Domain KodePms variabel length character string, length 7 OrdPembelian (
TglOrdBeli NOT NULL,
KodePgw NOT NULL
KodePms NOT NULL,
Primary key (NoOrdBeli),
Foreign Key KodePms references Pemasok (KodePms)
ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KodePgw references Pegawai (KodePgw)
ON UPDATE CASCADE ON DELETE NO ACTION
)
OrdPenjualan
Domain NoOrdJual variabel length character string, length 7 Domain TglOrdJual variabel date, format short date
Domain Kode Pgw variabel length character string, length 7 Domain KodePlg variabel length character string, length 7 OrdPenjualan (
NoOrdJual NOT NULL,
TglOrdJual NOT NULL,
KodePgw NOT NULL
KodePlg NOT NULL,
Primary key (NoOrdJual),
Foreign Key KodePlg references Pelanggan( KodePlg )
ON UPDATE CASCADE ON DELETE NO ACTION) Foreign Key KodePgw references Pegawai (KodePgw)
ON UPDATE CASCADE ON DELETE NO ACTION )
OrdPembelianDetil
Domain NoOrdBeli variabel length character string, length 7 Domain KodeBrg
Domain Kuantitas variabel length character string, length 7 OrdPembelian (
NoOrdBeli NOT NULL,
KodeBrg NOT NULL,
Kuantitas NOT NULL,
Primary key (NoOrdBeli, KodeBrg),
Foreign Key NoOrdBeli references OrderPembelian ( NoOrdBeli ) ON UPDATE CASCADE ON DELETE NO ACTION Foreign Key KodeBrg references StokBrg ( KodeBrg )
ON UPDATE CASCADE ON DELETE NO ACTION )
OrdPenjualanDetil
Domain NoOrdJual variabel length character string, length 7 Domain KodeBrg variabel date, format short date
Domain Kuantitas variabel length character string, length 7 OrdPenjualan (
KodeBrg NOT NULL,
Kuantitas NOT NULL,
Primary key (NoOrdJual, KodeBrg),
Foreign Key NoOrdJual references OrderPenjualan ( NoOrdJual ) ON UPDATE CASCADE ON DELETE NO ACTION) Foreign Key KodeBrg references StokBrg ( KodeBrg )
ON UPDATE CASCADE ON DELETE NO ACTION) )