UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN
description
Transcript of UNIT 10 : REKABENTUK MODEL PANGKALAN DATA HUBUNGAN
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 Operasi-operasi asas :
•SELECT ( )
•PROJECT ()
•JOIN ( R S) Set operasi guna teori set matematik :
•UNION ()•INTERSECTION ()
•DIFFERENCE ( - )•CARTESIAN PRODUCT ( x )
OPERASI -OPERASI
ASAS
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
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)
KUANTAN20TAN CHENG LOCK
P10975
KUANTAN35AHMADP12345
PBANDARSTATUS
PNAMAPNO
PEMBEKAL
Operasi SELECT ()
Rekod PEMBEKAL dari KUANTAN yang mempunyai nilai STATUS > 15
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
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)
TAPAH18KOGB1234
KUANTAN11NATB1001
BBANDARBERAT
BNAMABNO
BAHAGIAN
Operasi SELECT ()
Rekod BAHAGIAN dengan BERAT < 15 dari bandar KUANTAN atau BERAT < 19 dari bandar TAPAH
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
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)
ALOR SETAR
15
BBANDARBERAT
BAHAGIAN
Operasi PROJECT ()
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
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
OPERASI -OPERASI
SET
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
Dua Hubungan GABUNG PADAN
21NORMA5
17AZRUL4
30SHAM3
27YATI2
23SUHAILA1
UMURNAMABIL
21NORMA5
15AZLI4
30SHAM3
28FATIN2
23SUHAILA1
UMURNAMABIL
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
Operasi UNION ()Contoh : A B
15AZLI7
28FATIN6
21NORMA5
17AZRUL4
30SHAM3
27YATI2
23SUHAILA1
UMUR
NAMABIL
Dua Hubungan GABUNG PADAN
21NORMA5
17AZRUL4
30SHAM3
27YATI2
23SUHAILA1
UMURNAMABIL
21NORMA5
15AZLI4
30SHAM3
28FATIN2
23SUHAILA1
UMURNAMABIL
Operasi INTERSECTION ()
Satu hubungan yang mengandungi semua rekod yang terdapat dalam hubungan A dan B.
Contoh : A B
Operasi INTERSECTION ()
Contoh : A B
21NORMA3
30SHAM2
23SUHAILA1
UMUR
NAMABIL
Dua Hubungan GABUNG PADAN
21NORMA5
17AZRUL4
30SHAM3
27YATI2
23SUHAILA1
UMURNAMABIL
21NORMA5
15AZLI4
30SHAM3
28FATIN2
23SUHAILA1
UMURNAMABIL
Operasi DIFFERENCE (-) Satu hubungan yang mengandungi semua rekod
yang terdapat dalam hubungan A tetapi tiada dalam B.
Contoh : A - B
Operasi DIFFERENCE (-) Contoh : A - B
17AZRUL2
27YATI1
UMUR
NAMABIL
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)
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
Operasi CARTESIAN PRODUCT (x)
Senarai pelajar dan gred yang diperolehi bagi setiap matapelajaran
3.33E412Marina
3.00E413Marina
2.67F404Suriati
GRED
KOD_M/P
NAMA
LATIHAN
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
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
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
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
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
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
LATIHAN OPERASI SET
Dapatkan PELAJAR 1 PELAJAR 2
Dapatkan PELAJAR 1 PELAJAR 2
Dapatkan PELAJAR 1 – PELAJAR 2
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
JAWAPAN
53
40
48
BERAT
MELAYUDKERIZAL06DKEF105
CINADTKTAN AH BEE06DTKF103
MELAYUDTKJULIA06DTKF012
KETURUNAN
KURSUS
PNAMANOID
SOALAN 2 : Dapatkan PELAJAR 1 PELAJAR 2
JAWAPAN
68
65
57
BERAT
INDIADKERAJEEV06DKEF027
MELAYUDTKSAIFUL06DTKF058
CINADKECHAN CHEE LI06DKEF056
KETURUNAN
KURSUS
PNAMANOID
SOALAN 3 : Dapatkan PELAJAR 1 – PELAJAR 2
BAHASA PERTANYAAN
SQL
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
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
BAHASA MANIPULASI
DATA (DML)
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
BAHASA DEFINISI DATA (DDL)
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
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
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
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
BAHASA DEFINISI DATA (DDL) SQL
Contoh : Menghapuskan jadual PELANGGAN
Jawapan : DROP TABLE PELANGGAN
• MENGHAPUSKAN JADUAL
BAHASA PERTANYAAN
QBE
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
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
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.
PERTANYAAN DALAM QBE
Terdapat TIGA operasi untuk kemaskini fail iaitu :•Kemaskini rekod (U.)
•Hapus rekod (D.)
•Tambah rekod (I.)
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
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
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
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
CONTOH SOALAN
CONTOH 3 : Hapuskan semua rekod pembekal dari Kuantan --> Hapus rekod ( D.)
P PNO PNAMA STATUS PBANDAR
D. KUANTAN
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.
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
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