• Tidak ada hasil yang ditemukan

Database Design. 9-1 Pengantar Konsep Database Relasional. Hak Cipta 2020, Oracle dan/atau afiliasinya. Semua Hak Dilindungi Undang-Undang.

N/A
N/A
Protected

Academic year: 2022

Membagikan "Database Design. 9-1 Pengantar Konsep Database Relasional. Hak Cipta 2020, Oracle dan/atau afiliasinya. Semua Hak Dilindungi Undang-Undang."

Copied!
22
0
0

Teks penuh

(1)
(2)

Database Design

9-1

Pengantar Konsep Database Relasional

(3)

Tujuan

• Pelajaran ini akan membahas tujuan berikut:

− Menentukan primary key

− Menentukan foreign key

− Menentukan aturan integritas kolom

− Mengidentifikasi elemen baris, kolom, primary key, unique key, dan foreign key pada diagram tabel yang berisi elemen- elemen ini

− Mengidentifikasi pelanggaran aturan integritas data

(4)

Tujuan

• Model data konseptual akan ditransformasikan menjadi desain database relasional

• Ini berarti bahwa entitas, atribut, hubungan, dan pengidentifikasi unik kami akan diterjemahkan ke dalam objek dalam database relasional

• Bandingkan ini dengan desainer pakaian yang

mengambil desainnya dari kertas dan menerapkannya ke kain

• Perancang perlu memahami cara menjahit desain

seperti Anda harus memahami struktur objek database

relasional

(5)

Database Relasional yang Digambarkan

• Database relasional adalah database yang dilihat oleh pengguna sebagai kumpulan tabel dua dimensi,

masing-masing berisi baris dan kolom

• Tabel di bawah ini berisi data karyawan

Baris

Kolom EMPLOYEES (nama tabel)

EMPLOYEE_ID FIRST_NAME LAST_NAME DEPARTMENT_ID

100 Steven King 90

101 Neena Kochhar 90

102 Lex De Haan 90

200 Jennifer Whalen 10

205 Shelley Higgins 110

(6)

Bahasa untuk Mengakses Data

• Bahasa kueri terstruktur (SQL) memungkinkan kita untuk mengakses data dalam database relasional secara efisien

• Alih-alih mencari secara manual setiap baris untuk

menemukan catatan untuk karyawan nomor 200, kita menggunakan pernyataan SQL berikut:

• Anda dapat melihat hasil dari pernyataan ini pada slide berikutnya

SELECT last_name, department_id FROM employees

WHERE employee_id = 200;

(7)

EMPLOYEE_ID FIRST_NAME LAST_NAME DEPARTMENT_ID

100 Steven King 90

101 Neena Kochhar 90

102 Lex De Haan 90

200 Jennifer Whalen 10

205 Shelley Higgins 110

Kueri SQL yang Diilustrasikan

SELECT last_name, department_id FROM employees

WHERE employee_id = 200;

EMPLOYEES (nama tabel)

LAST_NAME DEPARTMENT_ID

Whalen 10

(8)

Kueri SQL Khusus

• Untuk mencari semua karyawan di departemen nomor 90, kami menullis pernyataan SQL berbeda:

• Sekali lagi, Anda dapat melihat hasil dari pernyataan ini pada slide berikutnya

SELECT *

FROM employees

WHERE department_id = 90;

(9)

Kueri SQL Khusus

SELECT *

FROM employees

WHERE department_id = 90;

EMPLOYEES (nama tabel)

EMPLOYEES (nama tabel)

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

200 Jennifer Whalen …. 10

205 Shelley Higgins …. 110

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

(10)

Primary Key

• Primary key (PK) adalah kolom atau kumpulan koklom

yang mengidentifikasi secara unik setiap

baris di tabel

BANK_NO ACCT_NO BALANCE DATE_OPENED 104 75760 120,050.00 21-OKT-89

104 77956 100.10

105 89570 55,775.00 15-JAN-85 103 55890 15,001.85 10-MAR-91

105 75760 5.00 22-SEP-03

ACCOUNTS

Primary Key Beberapa Kolom

Primary Key Kolom Tunggal EMPLOYEES

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

200 Jennifer Whalen …. 10

205 Shelley Higgins …. 110

(11)

Primary Key

• Setiap tabel harus

memiliki primary key, dan primary key harus unik

BANK_NO ACCT_NO BALANCE DATE_OPENED 104 75760 120,050.00 21-OKT-89

104 77956 100.10

105 89570 55,775.00 15-JAN-85 103 55890 15,001.85 10-MAR-91

105 75760 5.00 22-SEP-03

ACCOUNTS

Primary Key Beberapa Kolom

Primary Key Kolom Tunggal EMPLOYEES

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

200 Jennifer Whalen …. 10

205 Shelley Higgins …. 110

(12)

Primary Key

• Tidak ada bagian primary key berupa null

BANK_NO ACCT_NO BALANCE DATE_OPENED 104 75760 120,050.00 21-OKT-89

104 77956 100.10

105 89570 55,775.00 15-JAN-85 103 55890 15,001.85 10-MAR-91

105 75760 5.00 22-SEP-03

ACCOUNTS

Primary Key Beberapa Kolom

Primary Key Kolom Tunggal EMPLOYEES

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

200 Jennifer Whalen …. 10

205 Shelley Higgins …. 110

(13)

MEMBER_ID LAST_NAME FIRST_NAME PAYROLL_ID

100 SMITH DANA 21215

310 ADAMS TYLER 59877

210 CHEN LAWRENCE 1101

405 GOMEZ CARLOS 52

378 LOUNGANI NEIL 90386

Kandidat Primary Key

• Tabel dapat memiliki lebih dari satu kolom, atau

kombinasi kolom, yang bisa berfungsi sebagai primary key tabel

• Setiap kolom, atau kombinasi kolom, disebut

"candidate" key karena bisa dipilih untuk digunakan sebagai primary key

Candidate Key Candidate Key

MEMBERS

(14)

Pilih Candidate Key

• Pilih satu candidate key untuk menjadi primary key tabel

• Kandidat lain menjadi key alternatif (atau unique key)

MEMBERS

Primary Key Alternatif atau

Unique Key (UK)

MEMBER_ID LAST_NAME FIRST_NAME PAYROLL_ID

100 SMITH DANA 21215

310 ADAMS TYLER 59877

210 CHEN LAWRENCE 1101

405 GOMEZ CARLOS 52

378 LOUNGANI NEIL 90386

(15)

Foreign Key

• Foreign Key(FK) adalah kolom, atau kombinasi kolom, dalam satu tabel yang berisi nilai yang cocok dengan nilai primary key di tabel lain

Foreign Key

DEPARTMENTS merujuk ke

Primary Key

EMPLOYEES

EMPLOYEE_ID FIRST_NAME LAST_NAME …. DEPARTMENT_ID

100 Steven King …. 90

101 Neena Kochhar …. 90

102 Lex De Haan …. 90

200 Jennifer Whalen …. 10

205 Shelley Higgins …. 110

DEPARTMENT_ID DEPARTMENT_NAME

10 Administrasi

20 Pemasaran

50 Pengiriman

(16)

BOOK_NO SHELF_NO BOOK_NAME 106 Administrasi LITTLE WOMEN 15 Pemasaran TALE OF TWO CITIES 7897 Pengiriman HARRY POTTER

15 Q35 LEARN TO SPEAK SPANISH

Aturan Foreign Key

• Jika primary key terdiri dari satu foreign key atau lebih, nilai FK tidak boleh NULL

SHELVES BOOKS

Primary Key Primary Key

PK ditautkan ke FK

SHELF_NO A6

A8 B24 Q35

(17)

• Kolom harus berisi satu nilai yang

konsisten dengan

format data kolom

BANK_NO ACCT_NO BALANCE DATE_OPENED 104 75760 120,050.00 21-OKT-89

104 77956 100.10

105 89570 55,775.00 15-JAN-85

103 55890 15,001.85 10-MAR-91

105 75760 5.00 22-SEP-03

Integritas Kolom

ACCOUNTS

Definisi Tabel ACCOUNTS

Column Name Data Type Optionality BANK_NO Number (5) Not Null ACCT_NO Number (8) Not Null BALANCE Number (12,2) Not Null DATE_OPENED Date

(18)

Ringkasan Aturan Integritas Data

• Aturan integritas data (juga dikenal sebagai constraint) menentukan status yang benar untuk database secara relasional

• Aturan integritas data memastikan bahwa penggunda

dapat melakukan operasi tersebut yang membiarkan

database dalam status yang konsisten dan benar

(19)

Ringkasan Aturan Integritas Data

Tipe Constraint Penjelasan Contoh

Integritas Entitas Primary key harus unik, dan tidak ada bagian dari primary key dapat null

Kolom emp_no dalam tabel EMPLOYEES tidak boleh null Integritas referensial

Foreign key harus cocok

dengan nilai primary key yang ada (atau yang lain kecuali null jika null tidak diizinkan)

Nilai di kolom dept_no tabel EMPLOYEES harus cocok

dengan nilai di kolom dept_no di tabel DEPARTMENTS

Integritas Kolom Kolom harus berisi nilai yang konsisten dengan format data kolom

Nilai di kolom saldo di tabel ACCOUNTS harus numerik

Integritas Buatan

Pengguna Data yang disimpan di database harus mematuhi aturan bisnis

Jika nilai kolom saldo tabel ACCOUNTS di bawah 1.00, kita harus kirim surat ke pemilik rekening ( ini akan

membutuhkan pemrograman tambahan untuk diberlakukan)

(20)

Terminologi

• Istilah-istilah penting yang digunakan dalam pelajaran ini di antaranya:

− Candidate Key

− Kolom

− Foreign key

− Primary Key

− Database relasional

− Baris

− Unique key

(21)

Rangkuman

• Dalam pelajaran ini, Anda seharusnya sudah belajar cara:

− Menentukan primary key

− Menentukan foreign key

− Menentukan aturan integritas kolom

− Mengidentifikasi elemen baris, kolom, primary key, unique key, dan foreign key pada diagram tabel yang berisi elemen- elemen ini

− Mengidentifikasi pelanggaran aturan integritas data

(22)

Referensi

Dokumen terkait

Tujuan dari penelitian ini adalah untuk memperoleh data dan informasi keragaman jenis fauna khususnya jenis-jenis burung endemik di Kawasan Hutan Blok Aketajawe

Juga diperoleh hasil dari pengujian dengan Anova didapat bahwa jenis dan ukuran font mempengaruhi kecepatan pembacaan teks, sedangkan warna font, interaksi dua arah, serta

Untuk itulah dalam kajian skripsi ini penulis juga menekankan tentang etika pemberitaan media massa ( kode etik jurnalistik ) pada salah satu media massa yaitu Tabloid

− Setiap PEKERJAAN dapat dikerjakan oleh satu atau lebih KARYAWAN. − Setiap PRODUK harus diklasifikasikan oleh satu dan hanya satu

Untuk mengekstrak data digunakan atribut yang unik yang akan menjadi primary key atau foreign key yang terhubung dari satu tabel ke tabel lain sehingga setiap nilai dari

Foreign key merupakan satu atau lebih atribut di dalam sebuah relasi yang juga merupakan primary key pada relasi atau tabel lain, sehingga dapat digunakan untuk menghubungkan

Foreign key merupakan satu atau lebih atribut di dalam sebuah relasi yang juga merupakan primary key pada relasi atau tabel lain, sehingga dapat digunakan

− Menyelesaikan kebutuhan bisnis untuk melacak perubahan harga atau nilai dengan membangun model yang.. menggunakan