bab 12 pangkalan data dan visual

Upload: ahmad-anas

Post on 11-Jul-2015

232 views

Category:

Documents


0 download

TRANSCRIPT

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

BAB 12

PANGKALAN DATA DAN VISUAL BASIC

PENGENALANBab ini akan membincangkan penggunaan pangkalan data dalam aplikasi Visual Basic (VB). Sebelum ini, anda berpeluang untuk menggunakan satu daripada komponen yang disediakan dalam VB dalam memudahkan pembinaan sesuatu sistem iaitu ActiveX. Dalam bab ini, anda akan mempelajari teknik menggabungkan dua perisian yang berasingan untuk membina sesuatu sistem iaitu kombinasi perisian bahasa pengaturcaraan VB dan perisian pangkalan data. Lazimnya, VB akan bertindak sebagai antaramuka. Manakala perisian MS-Access digunakan sebagai pangkalan data. Kombinasi dua perisian ini boleh menjadikan sesuatu sistem itu lebih baik dan tegar.

OBJEKTIFDi akhir bab ini anda seharusnya dapat: 1. menyatakan hubungan antara entiti dan atribut dalam pangkalan data; 2. menerangkan hubungan Sistem Pengurusan Pangkalan Data dengan Rajah Hubungan Entiti, bahasa Structured Query Language dan perisian pangkalan data; 3. memanipulasikan data melalui Structured Query Language; dan 4. membina aturcara dengan mengkombinasikan perisian MS Visual Basic dan MSAccess.

12.1

PANGKALAN DATA

Pangkalan Data merupakan koleksi data yang disimpan mengikut kategori. Kategori tersebut dihubungkan melalui jenis data yang disimpan. Selain daripada itu, pangkalan data juga boleh ditakrifkan sebagai koleksi data tentang entiti yang berkaitan. Dalam aplikasi, pangkalan data membantu proses mengumpul, menyimpan dan mencapai data secara berkesan.

Pangkalan data adalah koleksi data. Bina satu segitiga hierarki data bermula daripada data yang terkecil hingga koleksi data yang terbesar.

132

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

Beberapa istilah penting dalam pangkalan data diterangkan dalam Jadual 12.1.Jadual 12.1: Beberapa Istilah Penting

Sebagai contoh, kita hendak membangunkan satu pangkalan data universiti. Antara entiti yang terlibat dalam universiti adalah Fakulti, Jabatan, Pensyarah, dan Pelajar. Atribut untuk Fakulti adalah Nama, Kod dan Bilangan Jabatan. Contoh dua rekod untuk satu entiti Fakulti adalah dirujuk dalam Rajah 12.1.

Rekod

Rajah 12.1: Hubungan entiti dan atribut

12.2

SISTEM PENGURUSAN PANGKALAN DATA (SPPD)

Sebelum anda menelusuri bab ini dengan lebih lanjut, anda perlu tahu berhubung dengan Sistem Pengurusan Pangkalan Data (SPPD).

SPPD atau Database Management System (DBMS) merupakan satu sistem yang diwujudkan khusus untuk menguruskan pangkalan data.

OUM

133

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

SPPD memastikan data yang dimasukkan dalam pangkalan data dapat dilihat, dimanipulasi, dikeluarkan dan dicapai dengan mudah. Terdapat banyak bahasa pengaturcaraan yang dibangunkan bersama dengan SPPD. Bahasa tersebut adalah seperti Informix dan Oracle.

12.3

KEBAIKAN MENGGUNAKAN SPPD

SPPD mempunyai banyak kebaikan. Antara kebaikan penggunaan SPPD adalah: pengguna mudah melihat data; pengguna mudah mencapai; dan pengguna mudah memanipulasi dan menghasilkan maklumat dengan menggunakan arahan Bahasa SQL.

SPPD seperti Informix menyedia tiga antaramuka utama kepada pengguna iaitu: melarikan Bahasa SQL; memilih atribut dalam jadual melalui menu; dan menulis aturcara yang melibatkan data dari pangkalan data.

Ketiga-tiga antaramuka mempunyai kemudahan untuk menjana maklumat hasil daripada mod larian yang boleh dilakukan dengan mudah. Banyak kebaikan yang boleh diperolehi apabila menggunakan SPPD dalam pangkalan data. Boleh anda fikirkan apakah kebaikan lain yang boleh ditambah selain daripada yang terdapat dalam teks?

12.4

SPPD BERASASKAN HUBUNGAN

Terdapat pelbagai jenis SPPD. Namun yang paling baik dan banyak digunakan adalah SPPD yang berasaskan kepada hubungan. SPPD ini memisahkan data mengikut kategori yang dinamakan sebagai entiti. Entiti mempunyai atribut iaitu data yang terdiri daripada nama data dan nilai data (atribut nama dan atribut nilai). Setiap entiti perlu mempunyai atribut yang sama dengan entiti yang lain supaya hubungan antara entiti dapat dilakukan. Sebagai contoh, satu entiti dinamakan PEKERJA mempunyai atribut nama NAMA, NOPER, ALAMAT. Satu entiti lain yang dinamakan sebagai JAWATAN mempunyai atribut nama NOPER, GAJIPOKOK, KATEGORI. Daripada entiti PEKERJA, atribut nama tersebut memegang nilai seperti Mohd Juzaiddin Ab Aziz, 43133, Kajang Utama dan entiti JAWATAN mempunyai atribut nilai 43133, 2500, A. Perbincangan di atas boleh diringkaskan dengan Rajah 12.2 berikut:

134

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

Rajah 12.2: Hubungan atribut nama dan nilai pada entiti

Rajah 12.3: Hubungan atribut dan rekod

Rajah Hubungan Entiti ( ERD) ditunjukkan dalam Rajah 12.4 seperti berikut:

PEKERJA

memegang

JAWATAN

Rajah 12.4: Rajah hubungan entiti(ERD) antara PEKERJA dan JAWATAN

Untuk penjelasan lanjut mengenai Rajah Hubungan dan Rajah Hubungan Entiti, sila rujuk Modul Pangkalan Data, UNITEM.

12.5

SPPD MENGGUNAKAN MS-ACCESS

Seperti mana yang telah dibincangkan dalam bahagian di atas, kita akan menggunakan MSAccess sebagai perisian SPPD dalam modul ini. Walau bagaimanapun, VB6.0 membenarkan anda untuk menggunakan perisian SPPD selain daripada MS-Access.

OUM

135

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

Untuk tutorial yang lengkap mengenai MS- Access, anda boleh gunakan buku yang dinyatakan sebelum ini atau lawat laman web seperti: 1. 2. http://mis.bus.sfu.ca/tutorials/MSAccess/tutorials.html http://www.cant.ac.uk/title/tutorials/access.htm

Jika anda tidak berkesempatan untuk mendapatkan buku atau laman web yang dicadangkan, berikut adalah langkah ringkas untuk membangunkan pangkalan data MS-Access: 1. 2. 3. 4. 5. Cipta Entiti. Bina Rajah Hubungan Antara Entiti. Buka perisian MS-Access. Cipta jadual (table) berdasarkan kepada entiti anda. Satu entiti merupakan satu jadual. Simpankan Pangkalan Data anda.

Berikut merupakan contoh satu pangkalan data MS-Access: Nama Pangkalan Data: PERALATAN Entiti: 1. 3. 4. ID_PEKERJA PEKERJA PEMBEKAL

2. ITEM

5. JUALAN Rujuk Rajah 12.5 untuk melihat hubungan entiti bagi contoh di atas.

136

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

Rajah 12.5: ERD dalam pangkalan data peralatan

Daripada Rajah 12.5, didapati bahawa hubungan antara entiti dapat dilakukan dengan menggunakan atribut yang sama nilai atau dikenali sebagai kunci atribut. Secara am, ia boleh diterangkan seperti berikut: Penjual yang menjual barang dikenali melalui ID_PENJUAL. Nama penjual dengan ID_PENJUAL boleh diperolehi daripada jadual PEKERJA. Item yang dijual oleh penjual tersebut adalah ID_ITEM. Maklumat lengkap mengenai ID_ITEM berada dalam jadual ITEM. Manakala pembekal kepada item tersebut adalah ID_PEM di mana maklumat mengenainya boleh didapati daripada jadual PEMBEKAL. Rajah 12.5 juga menunjukkan bahawa jadual JUALAN wujud untuk menentukan penjual, item yang dijual dan sumber item diperolehi. Jadual ini boleh menghasilkan maklumat seperti penjual yang paling banyak jualan mengikut item, jumlah item yang paling banyak dijual, dan penjual yang menjual item yang tertinggi secara keseluruhan.

Di dalam Rajah 12.5, terdapat beberapa atribut yang digariskan. Berikan pandangan anda mengapa ia perlu digariskan?

OUM

137

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

Latihan 12.1Bangunkan entiti dan atribut serta ERD untuk membangunkan aplikasi pendaftaran pesakit di kaunter klinik lengkap dengan laporan perubatan.

12.6

STRUCTURED QUERY LANGUAGE (SQL)

Satu lagi kelebihan SPPD ialah menyokong SQL. SQL merupakan satu bahasa yang amat penting dalam SPPD yang berasaskan hubungan. Ia adalah satu arahan kepada SPPD untuk mengeluarkan maklumat berdasarkan pemanipulasian data dalam SPPD. Berikut adalah satu contoh arahan SQL terhadap jadual yang ada dalam bahagian 12.4:

Select * From PEKERJADaripada arahan tersebut, SPPD akan melaksanakan perintah arahan tersebut iaitu, senaraikan semua atribut daripada jadual PEKERJA. Semua atribut yang ada akan disenaraikan. Jadual PEKERJA mempunyai lebih daripada satu rekod pekerja iaitu, mungkin rekod pekerja A hingga pekerja Z. Jika perlu menyenaraikan rekod pekerja tertentu sahaja, maka guna arahan: Select * From PEKERJA where NAMA = Mohd Juzaiddin Ab Aziz SPPD akan melaksanakan perintah arahan tersebut iaitu, pilih semua atribut daripada jadual PEKERJA di mana NAMA adalah Mohd Juzaiddin Ab Aziz. SPPD akan menyenaraikan semua atribut untuk pekerja bernama Mohd Juzaiddin Ab Aziz sahaja. Berikut adalah format arahan SQL secara umum: Select [atribut] From [jadual] Where [atribut] = [nilai] And [nilai/atribut] = [nilai/atribut] Semua perkataan yang ditebalkan merupakan perkataan simpanan dalam bahasa SQL. Perkataan yang berada dalam [ ] merupakan atribut dan nilai. Jika anda hendak mendapatkan semua atribut, gunakan tanda *. Jika dua atribut, contoh nama dan kad pengenalan, gunakan format nama, kp. Contoh:

Select nama, kp From PERIBADI

138

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

Maklumat lanjut mengenai pernyataan SQL boleh diperolehi daripada manamana buku Pangkalan Data. Selain daripada itu anda boleh membaca daripada buku VB6.0 How To Program, Prentice Hall, oleh Dietel & Deitel.

Latihan 12.2Berikan beberapa arahan SQL untuk mendapatkan beberapa data daripada pangkalan data yang anda bangunkan dalam Latihan 12.1.

Sebelum anda ke topik seterusnya, anda digalakkan untuk berehat sebentar. Topik berikutnya memerlukan penggunaan komputer. Buka komputer dan larikan perisian VB sebaik sahaja anda ingin memulakan pembacaan seterusnya.

12.7

VISUAL BASIC DAN MS-ACCESS

Visual Basic merupakan bahasa pengaturcaraan, sementara MS-Access merupakan SPPD. Bahasa pengaturcaraan digunakan untuk menyediakan aplikasi, mengawal perjalanan dan operasi suatu aplikasi. Sementara itu, SPPD digunakan untuk menyediakan kemudahan penyimpanan data dan SQL. Walaupun pada masa ini kebanyakan SPPD termasuk MS-Access menyediakan kemudahan antaramuka, namun fitur yang ada pada satu SPPD tidak sebanyak yang boleh dilakukan oleh suatu perisian pembangunan aturcara. Untuk menggunakan MS-Access dan VB, anda perlu membuat hubungan terlebih dahulu. Anda akan diajar untuk membuat hubungan antara VB dan MS-Access dengan menggunakan kemudahan ActiveX ADODC. Berikut adalah langkah-langkah untuk mendapatkan hubungan MS-Access daripada VB menerusi ADODC: 1. 2. 3. 4. Buka projek VB. Klik menu Project dan kemudian klik Components (Untuk mendapatkan fail ocx, seperti yang dibincangkan dalam Bab 11). Skrol dan klik pada ActiveX Microsoft ADO Data Control 6.0 (OLEDB). Klik Apply dan kemudian OK. Satu objek ADODC ditambah dalam ruangan ToolBox anda, seperti yang ditunjukkan dalam Rajah 12.6.

OUM

139

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

Rajah 12.6: ToolBox dengan tambahan objek ADODC

5.

Klik objek ADODC dan bawa ke atas form. Anda akan diberikan objek seperti Rajah 12.7.

Rajah 12.7: Objek ADODC

6.

Klik sebelah kanan tetikus di atas ADODC tersebut dan klik pada ADODC Property. Anda akan dipaparkan dengan menu dialog seperti Rajah 12.8.

Rajah 12.8: Menu dialog objek ADODC Property

140

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

7.

Pastikan butang radio Use Connection String aktif dan klik butang Build... . Anda akan dipaparkan dengan menu dialog seperti Rajah 12.9.

Rajah 12.9: Menu dialog untuk pilih jenis pangkalan data

8. 9.

Dari Rajah 12.9, jika anda menggunakan MS-Access 2000, sila pilih Microsoft Jet 4.0 OLE DB Provider. Jika MS-Access 97, pilih Microsoft Jet 3.51 OLE DB Provider. Klik butang Next. Anda akan dipaparkan dengan menu dialog seperti Rajah 12.10.

Rajah 12.10: Menu dialog untuk menghubungi pangkalan data

OUM

141

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

10. Dari Rajah 12.10, klik butang untuk mencari (browse) lokasi pangkalan data anda, kemudian klik butang Test Connection. 11. Jika pangkalan data berjaya dihubungkan, maka satu kotak mesej dengan mesej Test Connection Succeeded dipaparkan. 12. Jika mesej tersebut tidak dipaparkan, sila pastikan pangkalan data anda wujud atau berada dalam direktori yang betul. Bolehkah anda mengikuti langkah-langkah tadi. Sila ulang semula langkah-langkah tersebut jika terdapat sebarang mesej yang tidak dimaklumkan di dalam teks ini. Mungkin ada yang anda tersilap! Dua istilah yang amat penting dalam pembangunan aplikasi yang menggunakan VB dan pangkalan data adalah RecordSource dan RecordSet. RecordSource merupakan sumber data atau rekod dalam pangkalan data diperolehi menerusi ADODC. Sumber data ini boleh diperolehi daripada suatu jadual tertentu ataupun daripada arahan SQL. Anda boleh meletakkan RecordSource daripada antaramuka yang dikawal oleh Tab RecordSource menu dialog. Rujuk dengan segera Rajah 12.11. Jika anda klik pada Tab tersebut, terdapat tiga ruangan yang anda perlu isikan. Berikut adalah ruangan yang perlu diisikan: 1. 2. 3. Command Type Table or Stored Procedure Name Command Text (SQL)

Rajah 12.11: RecordSource dan item yang diperlukan

142

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

Dalam Command Type, terdapat empat kategori Command yang boleh dipilih iaitu: 1. 2. 3. 4. 8 adCmdUnknown 1 adCmdText 2 adCmdTable 4 adCmdStoredProc

Penerangan mengenai fungsi Command Type dinyatakan dalam Jadual 12.2 di bawah.Jadual 12.2: Arahan Command Type

Teroka perisian Visual Basic anda. Dapatkan teknik baru, selain daripada menggunakan Property Page (Rajah 12.11) untuk menggunakan RecordSource.

OUM

143

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

RecordSet pula merupakan satu lokasi penyimpanan rekod yang wujud hasil daripada pelaksanaan RecordSource. Berikut adalah Jadual 12.3 yang menerangkan rekod dalam Jadual PERIBADI yang mempunyai rekod seperti berikut:Jadual 12.3: Jadual PERIBADI

PERIBADI

Apabila satu RecordSource yang mempunyai arahan SQL: Select nama, id From PERIBADI Setelah arahan SQL di atas dilaksanakan, RecordSet yang akan diberikan adalah seperti Jadual 12.4:Jadual 12.4: Output dari Pemilihan nama dan id

Jika RecordSource dengan arahan SQL: Select * from PERIBADI where Kp = A2010101 RecordSet yang akan diberikan adalah seperti Jadual 12.5:Jadual 12.5: Output dari Pemilihan Jadual Peribadi dengan kp = A2010101

Bagaimanakah jadual satu RecordSet yang datangnya dari RecordSource jika arahan seperti Select * From Peribadi? Fikirkan.

144

OUM

UNIT 3 BAB 12

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

12.8

APLIKASI VISUAL BASIC DAN MS-ACCESS

Berikut adalah langkah-langkah membangunkan aplikasi yang menggunakan pangkalan data dan VB tanpa melibatkan penulisan aturcara yang banyak. Pembangunan yang melibatkan penulisan atur cara akan dibincangkan dalam Bab 13. 1. 2. 3. 4. 5. 6. Buka projek dan form VB. Bina satu pangkalan data dalam MS-Acesss(.mbd). Setelah lakukan hubungan (ikut langkah dalam bahagian 12.7). Klik pada Tab yang ketiga iaitu Record Source pada menu dialog seperti Rajah 12.11. Pilih 1 adCmdText, pada bahagian Command Type. Taipkan arahan SQL dalam ruangan Command Text (SQL). (Anda boleh menaip sebarang arahan SQL untuk mendapatkan data contoh, Select * from PERIBADI ). Kembali kepada form, klik pula objek DataGrid daripada ToolBox. DataGrid merupakan satu objek ActiveX. Untuk mendapatkannya, klik menu Project, klik Component, pilih Microsoft DataGrid Control 6.0 (OLEDB). Dalam kotak Properties DataGrid, isikan maklumat dalam ruangan DataSource. Maklumat yang perlu diisikan adalah nama objek ADODC yang telah anda hubungkan dengan pangkalan data di atas. Jika anda tidak menukar nama objek, nama ADODC tersebut adalah Adodc1. Ini ditunjukkan dalam Rajah 12.12. Jika anda tidak mahu data dalam pangkalan data itu diedit oleh pengguna, pilih False dalam ruangan AllowUpdate.

7.

8. 9.

10. Larikan aturcara anda. Anda akan mendapati bahawa data yang dipaparkan dalam DataGrid1 adalah merupakan data yang anda minta melalui arahan SQL daripada pangkalan data.

Rajah 12.12: AdodcJabatan dimasukkan dalam ruangan ciri DataSource untuk DataGrid1

OUM

145

VISUAL BASIC LANJUTAN PANGKALAN DATA DAN VISUAL BASIC

UNIT 3 BAB 12

Daripada langkah-langkah yang ditunjukkan di atas, kita mendapati bahawa ini adalah cara yang termudah untuk memaparkan kandungan pangkalan data ke dalam aplikasi tanpa perlu banyak mengekod aturcara. Pada Bab yang seterusnya, kita akan membangunkan aplikasi VB yang menggunakan aturcara untuk mengawal data. Sebelum meneruskan pembacaan, jawab soalan latihan berikut:

Latihan 12.3Bangunkan pangkalan data yang diterangkan dalam bahagian 12.7. Gantikan format kad pengenalan lama kepada format kad pengenalan baru. Berdasarkan kepada aplikasi dalam bahagian 12.8, dapatkan nombor kad pengenalan daripada salah satu lajur DataGrid1, dan paparkan umur pemegang kad pengenalan tersebut.

TIPS : VB6.0 membenarkan juruaturcaranya untuk menggunakan sebarang jenis pangkalan data.

Pangkalan Data MS-Access mempunyai kemudahan untuk membangunkan antaramuka. Apakah kelebihan membangunkan aplikasi yang menggunakan VB berbanding dengan penggunaan pengaturcaraan dalam MS-Access?

RUMUSANAplikasi memudahkan perjalanan suatu sistem dalam organisasi. Ia menyimpan dan menyediakan maklumat dengan cepat. Tanpa pangkalan data, suatu aplikasi akan menyimpan data dalam format fail dan dari sudut pandangan ahli maklumat, ia merugikan. Ini disebabkan data yang sama berkemungkinan disimpan secara berulang kali. Selain daripada itu, tugas juruaturcara juga sukar dan kompleks disebabkan banyak laporan perlu disediakan. VB membenarkan data disimpan dan diuruskan dalam pangkalan data. Datadata ini boleh dimanipulasikan dengan menggunakan arahan SQL. Hubungan diantara VB dan pangkalan data juga adalah mesra dengan kemudahan aplikasi ActiveX, ADODC.

146

OUM