unit 10 : rekabentuk model pangkalan data hubungan

82
UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN E4161 : SISTEM KOMPUTER & APLIKASI

Upload: zeki

Post on 14-Jan-2016

69 views

Category:

Documents


1 download

DESCRIPTION

UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN. E4161 : SISTEM KOMPUTER & APLIKASI. PENGENALAN. Menggunakan konsep hubungan dalam matematik ( algebra hubungan ) untuk mengolah data. ALGEBRA HUBUNGAN. DEFINISI. Sekumpulan operasi untuk MEMANIPULASI keseluruhan hubungan - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

UNIT 10 :REKABENTUK MODEL

PANGKALAN DATA HUBUNGAN

E4161 : SISTEM KOMPUTER & APLIKASI

Page 2: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

PENGENALAN

Menggunakan konsep hubungan dalam matematik (algebra hubungan) untuk mengolah data

Page 3: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

ALGEBRA HUBUNGAN

Page 4: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

DEFINISI Sekumpulan operasi untuk MEMANIPULASI

keseluruhan hubungan Operasi-operasi asas :

•SELECT ( )

•PROJECT ()

•JOIN ( R S) Set operasi guna teori set matematik :

•UNION ()•INTERSECTION ()

•DIFFERENCE ( - )•CARTESIAN PRODUCT ( x )

Page 5: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

OPERASI -OPERASI

ASAS

Page 6: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan Data PEMBEKAL-BAHAGIAN-PROJEK

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

15SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN KUANTANTAPEJ195

ALOR SETAR

TERMINAL

J251

ALOR SETAR

CONSOLE

J325

ALOR SETAR

READERJ007

TAPAHPUNCHJ012

KUANTANSORTERJ001

JBANDARJNAMAJNO

PROJEK

Page 7: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi SELECT () Operasi untuk keluarkan rekod yang memenuhi

syarat yang ditetapkan dari satu hubungan tertentu

Sinteks : <syarat pemilihan> (nama

hubungan)

Contoh 1 : Dapatkan rekod PEMBEKAL dari KUANTAN yang mempunyai nilai STATUS > 15

<syarat pemilihan> (nama hubungan)

(STATUS >15 AND PBANDAR=KUANTAN) (PEMBEKAL)

Page 8: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

KUANTAN20TAN CHENG LOCK

P10975

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

Operasi SELECT ()

Rekod PEMBEKAL dari KUANTAN yang mempunyai nilai STATUS > 15

Page 9: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan Data PEMBEKAL-BAHAGIAN-PROJEK

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

15SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN KUANTANTAPEJ195

ALOR SETAR

TERMINAL

J251

ALOR SETAR

CONSOLE

J325

ALOR SETAR

READERJ007

TAPAHPUNCHJ012

KUANTANSORTERJ001

JBANDARJNAMAJNO

PROJEK

Page 10: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi SELECT () Sinteks :

<syarat pemilihan> (nama hubungan)

Contoh 2 : Dapatkan rekod BAHAGIAN dengan mempunyai BERAT < 15 dari bandar

KUANTAN atau BERAT < 19 dari bandar TAPAH

<syarat pemilihan> (nama hubungan)

(BERAT <15 AND BBANDAR=KUANTAN) OR (BERAT <19AND BBANDAR=TAPAH)

(BAHAGIAN)

Page 11: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

TAPAH18KOGB1234

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN

Operasi SELECT ()

Rekod BAHAGIAN dengan BERAT < 15 dari bandar KUANTAN atau BERAT < 19 dari bandar TAPAH

Page 12: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan Data PEMBEKAL-BAHAGIAN-PROJEK

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

15SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN KUANTANTAPEJ195

ALOR SETAR

TERMINAL

J251

ALOR SETAR

CONSOLE

J325

ALOR SETAR

READERJ007

TAPAHPUNCHJ012

KUANTANSORTERJ001

JBANDARJNAMAJNO

PROJEK

Page 13: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi PROJECT () Operasi untuk keluarkan atribut tertentu dari

hubungan tertentu Sinteks :

<senarai atribut> (nama hubungan)

Contoh 1 : Dapatkan nilai BERAT dan BANDAR bagi BAHAGIAN yang dibekalkan di mana nama BAHAGIAN ialah skru

<senarai atribut> (nama hubungan)

(BERAT, BBANDAR) ( BNAMA=SKRU) (BAHAGIAN)

Page 14: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

ALOR SETAR

15

BBANDARBERAT

BAHAGIAN

Operasi PROJECT ()

Page 15: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan Data PEMBEKAL-BAHAGIAN-PROJEK

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

15SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN KUANTANTAPEJ195

ALOR SETAR

TERMINAL

J251

ALOR SETAR

CONSOLE

J325

ALOR SETAR

READERJ007

TAPAHPUNCHJ012

KUANTANSORTERJ001

JBANDARJNAMAJNO

PROJEK

Page 16: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi JOIN (R S) Operasi yang gabung rekod dari dua hubungan

untuk menjadi satu tupel jika syarat tertentu dipenuhi

Sinteks :

R (syarat) S = (syarat) (RxS)

Contoh 1 : P PBANDAR = BBANDAR B

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

KUANTAN11NATB1001

ALOR SETAR

15SKRUB1004

ALOR SETAR

15SKRUB1004

TAPAH18KOGB1234

KUANTAN11NATB1001

BBANDARBERAT

BNAMA

BNO

Page 17: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

OPERASI -OPERASI

SET

Page 18: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

DEFINISI OPERASI SET GABUNG PADAN (Union Compatible)

•Kedua-dua hubungan mempunyai :

•Bilangan atribut yang sama

•Domain yang sama

Set operasi HANYA boleh dijalankan JIKA kedua-dua hubungan tersebut adalah GABUNG PADAN

Page 19: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Dua Hubungan GABUNG PADAN

21NORMA5

17AZRUL4

30SHAM3

27YATI2

23SUHAILA1

UMURNAMABIL

21NORMA5

15AZLI4

30SHAM3

28FATIN2

23SUHAILA1

UMURNAMABIL

Page 20: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi UNION () Satu hubungan yang mengandungi SEMUA

rekod dalam A atau B dalam kedua-dua hubungan A dan B

Rekod berulang akan dihapuskan Contoh : A B

Page 21: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi UNION ()Contoh : A B

15AZLI7

28FATIN6

21NORMA5

17AZRUL4

30SHAM3

27YATI2

23SUHAILA1

UMUR

NAMABIL

Page 22: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Dua Hubungan GABUNG PADAN

21NORMA5

17AZRUL4

30SHAM3

27YATI2

23SUHAILA1

UMURNAMABIL

21NORMA5

15AZLI4

30SHAM3

28FATIN2

23SUHAILA1

UMURNAMABIL

Page 23: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi INTERSECTION ()

Satu hubungan yang mengandungi semua rekod yang terdapat dalam hubungan A dan B.

Contoh : A B

Page 24: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi INTERSECTION ()

Contoh : A B

21NORMA3

30SHAM2

23SUHAILA1

UMUR

NAMABIL

Page 25: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Dua Hubungan GABUNG PADAN

21NORMA5

17AZRUL4

30SHAM3

27YATI2

23SUHAILA1

UMURNAMABIL

21NORMA5

15AZLI4

30SHAM3

28FATIN2

23SUHAILA1

UMURNAMABIL

Page 26: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi DIFFERENCE (-) Satu hubungan yang mengandungi semua rekod

yang terdapat dalam hubungan A tetapi tiada dalam B.

Contoh : A - B

Page 27: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi DIFFERENCE (-) Contoh : A - B

17AZRUL2

27YATI1

UMUR

NAMABIL

Page 28: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi CARTESIAN PRODUCT (x)

Satu hubungan yang mengandungi semua atribut dalam hubungan R1 dan R2 dan mempunyai semua rekod yang mungkin dari R1 dan R2

Tek Komputer

Iskandar

10DTK118

Tek Maklumat

Shafika10DTK006

Tek Komputer

Marina 10DTK112

Tek Maklumat

Suriati10DTK001

KURSUSNAMANO PEND

2.00E41110DTK007

3.33E41210DTK112

3.00E41310DTK112

2.67F40410DTK001

GRED

KOD_M/P

NO PEND

PELAJAR (R1) GRED (R2)

Page 29: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi CARTESIAN PRODUCT (x)

2.673.003.332.002.673.003.332.002.673.003.332.002.673.003.332.00

F 404E 413E 412E 411F 404E 413E 412E 411F 404E 413E 412E 411F 404E 413E 412E 411

10 DIT 001

10 DTK 112

10 DTK 112

10 DTK 007

10 DIT 001

10 DTK 112

10 DTK 112

10 DTK 007

10 DIT 001

10 DTK 112

10 DTK 112

10 DTK 007

10 DIT 001

10 DTK 112

10 DTK 112

10 DTK 007

Teknologi Maklumat

Teknologi Maklumat

Teknologi Maklumat

Teknologi Maklumat

Teknologi Komputer

Teknologi Komputer

Teknologi Komputer

Teknologi Komputer

Teknologi Maklumat

Teknologi Maklumat

Teknologi Maklumat

Teknologi Maklumat

Teknologi Komputer

Teknologi Komputer

Teknologi Komputer

Teknologi Komputer

SuriatiSuriatiSuriatiSuriatiMarinaMarinaMarinaMarinaShafikaShafikaShafikaShafikaIskandarIskandarIskandarIskandar

10 DIT 00110 DIT 00110 DIT 00110 DIT 00110 DTK 11210 DTK 11210 DTK 11210 DTK 11210 DIT 00610 DIT 00610 DIT 00610 DIT 00610 DTK 11810 DTK 11810 DTK 11810 DTK 118

GREDKOD_M/P

NO_PEND

KURSUSNAMANO_PEND

Page 30: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Operasi CARTESIAN PRODUCT (x)

Senarai pelajar dan gred yang diperolehi bagi setiap matapelajaran

3.33E412Marina

3.00E413Marina

2.67F404Suriati

GRED

KOD_M/P

NAMA

Page 31: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

LATIHAN

Page 32: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan DataPELAJAR-SUBJEK

53

68

65

40

57

48

BERAT

MELAYUDKERIZAL06DKEF105

INDIADKERAJEEV06DKEF027

MELAYUDTKSAIFUL06DTKF058

CINADTKTAN AH BEE06DTKF103

CINADKECHAN CHEE LI06DKEF056

MELAYUDTKJULIA06DTKF012

KETURUNAN

KURSUS

PNAMANOID

PELAJAR

03MIKROPE4160

02PENGATURCARAANE3062

03TEKNOLOGI ELEKTRIK

E3001

03AMALI KEJURUTERAAN 2

E2003

02SISTEM KOMPUTERE4161

KREDIT

M/PKOD

SUBJEK

Page 33: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

LATIHAN OPERASI ASAS

Dapatkan rekod PELAJAR berketurunan MELAYU yang mempunyai BERAT > 55

Dapatkan rekod PELAJAR berketurunan MELAYU dari KURSUS DKE atau berketurunan CINA dari kursus DTK

Dapatkan KOD dan MP bagi SUBJEK dimana KREDIT adalah 03

Page 34: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPANSoalan 1 : Dapatkan rekod PELAJAR

berketurunan MELAYU yang mempunyai BERAT > 55

(KETURUNAN=MELAYU AND BERAT>55) (PELAJAR)

NOID PNAMA KURSUS KETURUNAN

BERAT

06DTKF058 SAIFUL DTK MELAYU 65

Page 35: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPANSoalan 2 : Dapatkan rekod PELAJAR

berketurunan MELAYU dari KURSUS DKE atau berketurunan CINA dari kursus DTK

(KETURUNAN=MELAYU AND KURSUS=DKE) OR (KETURUNAN=CINA AND KURSUS=DTK) (PELAJAR)

NOID PNAMA KURSUS KETURUNAN

BERAT

06DKEF105 RIZAL DKE MELAYU 53

06DTKF103 TAN AH BEE

DTK CINA 40

Page 36: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPAN

Soalan 3 : Dapatkan KOD dan MP bagi SUBJEK dimana KREDIT adalah 03

(KOD,MP) ( KREDIT = 03) (SUBJEK)KOD M/P KREDI

T

E2003 AMALI KEJURUTERAAN 2

03

E3001 TEKNOLOGI ELEKTRIK

03

E4160 MIKROP 03

Page 37: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan DataPELAJAR 1 dan PELAJAR 2

53

68

65

40

57

48

BERAT

MELAYUDKERIZAL06DKEF105

INDIADKERAJEEV06DKEF027

MELAYUDTKSAIFUL06DTKF058

CINADTKTAN AH BEE06DTKF103

CINADKECHAN CHEE LI06DKEF056

MELAYUDTKJULIA06DTKF012

KETURUNAN

KURSUS

PNAMANOID

PELAJAR 1

53

62

61

40

60

48

BERAT

MELAYUDKERIZAL06DKEF105

INDIADKESALMAN KHAN

06DKEF074

CINADTKANDY LAU06DTKF037

CINADTKTAN AH BEE06DTKF103

MELAYUDTKDANISH IQBAL06DTKF069

MELAYUDTKJULIA06DTKF012

KETURUNAN

KURSUS

PNAMANOID

PELAJAR 2

Page 38: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

LATIHAN OPERASI SET

Dapatkan PELAJAR 1 PELAJAR 2

Dapatkan PELAJAR 1 PELAJAR 2

Dapatkan PELAJAR 1 – PELAJAR 2

Page 39: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPAN

53

68

65

40

57

48

BERAT

MELAYUDKERIZAL06DKEF105

INDIADKERAJEEV06DKEF027

MELAYUDTKSAIFUL06DTKF058

CINADTKTAN AH BEE06DTKF103

CINADKECHAN CHEE LI06DKEF056

MELAYUDTKJULIA06DTKF012

KETURUNAN

KURSUS

PNAMANOID

62

61

60

INDIADKESALMAN KHAN

06DKEF074

CINADTKANDY LAU06DTKF037

MELAYUDTKDANISH IQBAL06DTKF069

SOALAN 1 : Dapatkan PELAJAR 1 PELAJAR 2

Page 40: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPAN

53

40

48

BERAT

MELAYUDKERIZAL06DKEF105

CINADTKTAN AH BEE06DTKF103

MELAYUDTKJULIA06DTKF012

KETURUNAN

KURSUS

PNAMANOID

SOALAN 2 : Dapatkan PELAJAR 1 PELAJAR 2

Page 41: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

JAWAPAN

68

65

57

BERAT

INDIADKERAJEEV06DKEF027

MELAYUDTKSAIFUL06DTKF058

CINADKECHAN CHEE LI06DKEF056

KETURUNAN

KURSUS

PNAMANOID

SOALAN 3 : Dapatkan PELAJAR 1 – PELAJAR 2

Page 42: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA PERTANYAAN

SQL

Page 43: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

SQLBahasa tanpa prosedurAntaramuka pengguna dengan

DBMSBahasa pangkalan data yang

komprehensif iaitu mempunyai pernyataan untuk definisi data, pertanyaan dan kemaskini

2 jenis bahasa :•Bahasa Manipulasi Data (DML) SQL

•Bahasa Definisi Data (DDL) SQL

Page 44: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

KELEBIHAN SQL Pengguna hanya perlu menyatakan maklumat

yang dikehendaki dan bukan bagaimana untuk mendapatkan sesuatu maklumat

Tidak menggunakan format tertentu Boleh digunakan oleh semua pihak samada

pengguna akhir, pereka pangkalan data dan pentadbiran

Mudah dipelajari kerana sinteksnya menggunakan bahasa inggeris mudah select, from dan where

Tidak peka kepada huruf kecil atau besar tetapi mesti ditaip seperti apa yang terdapat dalam pangkalan data

Page 45: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI

DATA (DML)

Page 46: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Digunakan untuk menakrif struktur data iaitu untuk membina, mengubahsuai dan menghapus objek pangkalan data

Digunakan juga untuk memperolehi semula atau mengubah data

Page 47: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Menapis baris yang diperolehi mengikut syarat

[ HAVING … ]

Mengumpul baris mengikut nilai yang terdapat pada lajur yang dinyatakan

[ GROUP BY … ]

Menyusun baris mengikut lajur yang dinyatakan

[ ORDER BY … ]

Menyatakan kriteria yang akan digunakan untuk memperolehi rekod

[ WHERE … ]

Menyenaraikan jadual atau jadual-jadual yang mana lajur hendak diperolehi

FROM …

Menyenaraikan lajur atau ungkapan yang hendak diperolehi dan dihasilkan

SELECT …

TUJUANSINTAKS

Page 48: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

Pangkalan Data PEMBEKAL-BAHAGIAN-PROJEK

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

15SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN KUANTANTAPEJ195

ALOR SETAR

TERMINAL

J251

ALOR SETAR

CONSOLE

J325

ALOR SETAR

READERJ007

TAPAHPUNCHJ012

KUANTANSORTERJ001

JBANDARJNAMAJNO

PROJEK

Page 49: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Untuk mendapatkan SEMUA tupel

- Menggunakan simbol ‘*’ - Menggunakan nama-nama lajur pada jadual yang dikehendaki

Contoh 1 : Dapatkan rekod bagi PEMBEKALJawapan :

SELECT *FROM PEMBEKAL ;

KUANTAN20TAN CHENG LOCKP10975

ALOR SETAR30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUSPNAMAPNO

Page 50: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Untuk mendapatkan lajur-lajur tertentu bagi semua tupel

Contoh 2 : Senaraikan nama semua BAHAGIANJawapan :

SELECT BNAMAFROM BAHAGIAN ;

KOG

KAM

SKRU

BOLT

NAT

BNAMA

Page 51: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Menggunakan kata kunci DISTINCT- Digunakan untuk menghapuskan tupel yang berulang apabila projection dilakukan ke atas lajur

Contoh 3 : Dapatkan senarai nama semua Bandar yang dibekalkan oleh PEMBEKALJawapan :

SELECT DISTINCT PBANDARFROM PEMBEKAL ;

TAPAH

ALOR SETAR

KUANTAN

PBANDAR

Page 52: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Menggunakan sintaks WHERE- Digunakan untuk menyatakan syarat yang tertentu supaya hanya tupel yang memenuhi syarat sahaja dihasilkan- Operator-operator yang digunakan :

* Perbandingan : =, <, >, <=, >=* Julat : BETWEEN / NOT BETWEEN* Ahli kepada set : IN / NOT IN* Padanan mengikut patern : LIKE / NOT LIKE, _ (menunjukkan satu aksara), % (menunjukkan terdapat samada 0 atau lebih aksara), IS NULL / IS NOT NULL

Page 53: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 1 : Dapatkan nombor pembekal dan status pembekal dari pembekal di KUANTAN

Jawapan : SELECT PNO, STATUSFROM PEMBEKALWHERE PBANDAR=KUANTAN ;

20P10975

35P12345

STATUSPNO

Page 54: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 2 : Senaraikan nombor dan nama bahagian yang mempuyai berat antara 12 dan 17

Jawapan : SELECT BNO, BNAMAFROM BAHAGIANWHERE BERAT BETWEEN 12 AND 17 ;

KAMB1075

SKRUB1004

BOLTB1123

BNAMABNO

Page 55: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 3 : Dapatkan nombor pembekal dan nama pembekal dari Bandar KUANTAN dan ALOR SETAR

Jawapan : SELECT PNO, PNAMAFROM PEMBEKALWHERE PBANDAR IN (‘KUANTAN’, ‘ALOR SETAR’) ;

TAN CHENG LOCK

P10975

BAHRAINP46452

SAIFULP59231

AHMADP12345

PNAMAPNO

Page 56: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 4 : Senaraikan nombor pembekal dan nama pembekal yang namanya bermula dengan huruf A

Jawapan : SELECT PNO, PNAMAFROM PEMBEKALWHERE PNAMA LIKE ‘A%’ ;

AMRANP93758

AHMADP12345

PNAMAPNO

Page 57: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Menggunakan sintaks ORDER BY- Digunakan untuk menyisih (menyusun) tupel yang diperolehi berdasarkan lajur yang dinyatakan.

- Isihan yang digunakan adalah :* menaik (ASC)* menurun (DESC)

- Apabila secara lalai (default), isihan adalah secara menaik.

Page 58: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 1 : Senaraikan nombor pembekal dan nama pembekal dari ALOR SETAR dengan nombor pembekal dalam susunan menaik

Jawapan : SELECT PNO, PNAMAFROM PEMBEKALWHERE PBANDAR=ALOR SETARORDER BY PNO ;

SAIFULP59231

BAHRAINP46452

PNAMAPNO

Page 59: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh 2 : Senaraikan nombor projek dan nama projek dari ALOR SETAR dengan nombor projek dalam susunan menurun

Jawapan : SELECT JNO, JNAMAFROM PROJEKWHERE JBANDAR=ALOR SETARORDER BY PNO DESC ;

READER007

TERMINALJ251

CONSOLEJ325

JNAMAJNO

Page 60: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Mengemaskini pangkalan data

- Melibatkan proses :

* INSERT- Untuk menambah data ke dalam jadual

* UPDATE- Untuk mengubah sesuatu jadual

* DELETE- Untuk menghapuskan sesuatu rekod

Page 61: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh : Masukkan nama pembekal Amin dari Kangar dengan status 25 dan bernombor P3523

ke dalam jadual PEMBEKAL

Jawapan : INSERT INTO PEMBEKALVALUES (‘P3523’, ‘AMIN’, ’25’, ‘KANGAR’) ;

• INSERT

KANGAR25AMINP3523

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

Page 62: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh : Tambahkan berat bagi semua bahagian dari bandar ALOR SETAR sebanyak 5

Jawapan : UPDATE BAHAGIANSET BERAT=BERAT + 5WHERE BBANDAR = ALOR SETAR ;

• UPDATE

TAPAH18KOGB1234

IPOH17KAMB1075

ALOR SETAR

20SKRUB1004

KANGAR12BOLTB1123

KUANTAN11NATB1001

BBANDARBERAT

BNAMABNO

BAHAGIAN

Page 63: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA MANIPULASI DATA (DML) SQL

Contoh : Hapuskan semua rekod yang terdapat dalam jadual PROJEK

Jawapan : DELETE FROM PROJEK ;

• DELETE

KANGAR25AMINP3523

KUANTAN20TAN CHENG LOCK

P10975

ALOR SETAR

30BAHRAINP46452

TAPAH20AMRANP93758

ALOR SETAR

30SAIFULP59231

KUANTAN35AHMADP12345

PBANDARSTATUS

PNAMAPNO

PEMBEKAL

Page 64: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL)

Page 65: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL) SQL

Digunakan untuk menakrif struktur data iaitu untuk membina, mengubahsuai dan menghapus objek pangkalan data

Membina jadual Mengubah struktur jadual Menghapuskan jadual

Page 66: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL) SQL

Contoh : Bina jadual PELANGGAN

Jawapan : CREATE TABLE PELANGGAN( CNO INTEGER NOT NULL , CNAMA VARCHAR (15) NOT NULL , STATUS INTEGER NOT NULL , CBANDAR VARCHAR (15) NOT NULL ) ;

• MEMBINA JADUAL

CBANDARSTATUS

CNAMACNO

PELANGGAN

Page 67: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL) SQL

Mengubah Struktur Data•Menambah lajur pada jadual

•Menambah atau mengubahkan lebar lajur

•Mengubah lajur daripada NULL kepada NOT NULL atau sebaliknya

•Menyatakan nilai lalai (default) pada lajur sedia ada

•Menyatakan kekangan pada lajur sedia ada

Page 68: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL) SQL

Contoh : Tambah lajur TEL dalam jadual PELANGGAN

Jawapan : ALTER TABLE PELANGGANADD ( TEL INTEGER NOT NULL ) ;

• MENGUBAH STRUKTUR JADUAL

CNO TELCBANDAR

STATUSCNAMA

PELANGGAN

Page 69: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA DEFINISI DATA (DDL) SQL

Contoh : Menghapuskan jadual PELANGGAN

Jawapan : DROP TABLE PELANGGAN

• MENGHAPUSKAN JADUAL

Page 70: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

BAHASA PERTANYAAN

QBE

Page 71: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

QBE Query By Example (QBE) Satu bahasa pertanyaan bergrafik yang

membekalkan kemudahan untuk menakrif, mengolah, mengemaskini dan mengawal pangkalan data hubungan

Pengguna boleh menulis pertanyaan dengan menggunakan jadual contoh kepada sistem

Jadual contoh Rangka jadual yang terdiri daripada nama jadual dan nama-nama lajur

Page 72: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

QBE Dibangunkan di IBM pada tahun 1970

an dan dikeluarkan untuk kegunaan komersial.

Sesuai digunakan oleh pengguna akhir yang tidak berkemahiran tinggi kerana menyediakan antaramuka pertanyaan bergrafik

Sesuai untuk pertanyaan yang tidak begitu kompleks dan tidak melibatkan begitu banyak jadual

Page 73: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

PERTANYAAN DALAM QBE

Pertanyaan untuk mencapai maklumat dilakukan dengan mengisi ruangan lajur pada jadual contoh

Simbol P. ditulis dalam sesuatu lajur untuk memaparkan maklumat dalam lajur tersebut (display)

Jika nilai medan ialah satu pemalar, nilai pemalar itu dituliskan dalam jadual contoh

Jika hendak menggunakan pembolehubah, tanda ‘_’ diletakkan di hadapannya.

Page 74: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

PERTANYAAN DALAM QBE

Terdapat TIGA operasi untuk kemaskini fail iaitu :•Kemaskini rekod (U.)

•Hapus rekod (D.)

•Tambah rekod (I.)

Page 75: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

PERTANYAAN DALAM QBE(KOTAK SYARAT)

•Jadual contoh mempunyai ruang yang terhad dan hanya menempatkan pernyataan syarat yang mudah

•Untuk pernyataan syarat yang kompleks, ruang yang berasingan diperlukan untuk mengisi pernyataan tersebut.

•Kotak syarat diperlukan apabila :•Mengungkap syarat yang melibatkan DUA atau

lebih lajur

•Mengungkap syarat yang melibatkan pengendali AND dan OR

•Mengungkap syarat yang melibatkan pengendali penyatuan dalam kumpulan

Page 76: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

SKIMA PANGKALAN DATA PEMBEKAL-BAHAGIAN-PROJEK-

PUNGGAHAN P (PNO, PNAMA, STATUS, PBANDAR) B (BNO, BNAMA, WARNA, BERAT, BBANDAR) J (JNO, JNAMA, JBANDAR) PBJ (PNO, BNO, JNO, BILANGAN)

P PNO PNAMA STATUS PBANDAR

B BNO BNAMA WARNA BERAT BBANDAR

J J NO J NAMA J BANDAR

PBJ PNO BNO J NO BILANGAN

Page 77: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 1 : Tukarkan warna bagi bahagian B1004 kepada biru

dan setkan bandarnya kepada nilai NULL --> kemas kini rekod ( U.)

B BNO BNAMA WARNA BERAT BBANDAR

1004 U.BIRU U.NULL

Page 78: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 2 : Setkan bilangan punggahan untuk semua pembekal

di Alor Setar kepada sifar

PBJ PNO BNO J NO BILANGAN

_N U.NULL

P PNO PNAMA STATUS PBANDAR

_N ALOR SETAR

Page 79: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 3 : Hapuskan semua rekod pembekal dari Kuantan --> Hapus rekod ( D.)

P PNO PNAMA STATUS PBANDAR

D. KUANTAN

Page 80: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 4 : Tambahkan bahagian B1089 ke dalam jadual

bahagian, BBANDAR = 'Sungai Petani', BERAT = '32', nama dan warna tidak diketahui.

B BNO BNAMA WARNA BERAT BBANDAR

B1089 32 SUNGAI PETANII.

Page 81: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 5 : Dapatkan nombor pembekal bagi pembekal di Alor

Setar atau yang mempunyai nilai status > 20

P PNO PNAMA STATUS PBANDAR

P. _ST _SC

KOTAK SYARAT

_SC = ALOR SETAR OR _ST > 20

Page 82: UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN

CONTOH SOALAN

CONTOH 6 : Dapatkan nombor bahagian bagi bahagian yang

mempunyai nilai berat di antara 12 ke 19

KOTAK SYARAT

_W >= 12 AND _W <= 19

B BNO BNAMA WARNA BERAT BBANDAR

P. _W