PEMAOGRATIAN IDATABASE
VISI]/U IIASIC .NIIT
Yuswanto Subarl
Kupersembahkan buku ini buat \9&n
orang
trn tercinta (fu & eAAf
A fnamaterfur SltIKOtul
'
.
.
ay
g oni
&
i6u {ammi)
&, Sffi t11 trtakng
Afinf,a l(fiairunnisa & Af,efra ctuti {usvianl PR'8ST^SIPIJSTAKA
i't] I
l. lts
trc:l
-'
Copyright @ Yuswanto & Subari 2007 Pemrograman Database Visual Basic .NET
'
S ura 6
:
tularia Cfrofrfdfr &, I(gtuarga
PEMROGRAMAN DATABASE VISUAL BASIC .NET
Penulis : Yuswanto & Subari Desain Cover :Sugiharto Adhi Cahyono Setting : Tlm Prestasi hrstaka Editor : Fitrl Hak Cipta dilindungi Undang-undang Dilarang mengutip, memperballyak, dan menerjerirahkan sebagian atau seluruh isi buku ini
tanpaizintertulis
jffi
"f ff 3'","r":::,^iPustakarava 2007
Ucapan Terima Kasih
Perpustakaan Naslonal : Katalog Dalam Tertitan (KDT) Prestasi Pustaka Pemrograman Database Visual Basic .NBf ISBN : 978-979-24-1957 -3
Cetakan Pertama : Agustus 2007
Seuntai fotta terucap tufrmerefot sehagaiungforyan terima fuuifr futmi: Eapdd
Puji syukur kehadirat A1lah SWT yang telah rnclimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan buku "Pemrograman Database Visual Basic .MT'. Kami berdua (penulis) berusaha semaksimal mungkin mencurahkan pikiran dan tenaga demi kesempurnaan isi dari buku tersebut. Keberadaan buku ini lebih dikhususkan bagi Anda yang lngin belajar dan bekerja pada pengolahan database dengan Vlnual Basic .NET. Sedang bagi Anda yang baru belajar Visual Henic .NET, kami sarankan untuk membaca terlebih dahulu Ituku 'Pemrograman Dasar Visual Basic .NET". Sebagian besar isi dari buku ini mengupas tentang bagaimana mendesain suatu program untuk mengolah data dengan memanfaatkan database Access dan SQL Server 2OOO. ?oplk yang diulas pada buku ini dimulai dengan pemrograman berorientasi obyek, pemrograman database dengan komponen data, pemrograman terkoneksi dan terputus, pemakaian XML den Web Service sampai dengan mendesain laporan dengan menggunakan Crystal Reports. Kelebihan dari buku ini adalah pembahasannya sangat rlnei dengan contoh-contoh program yang mudah dipahami tlen dibuat. Penulisan kode-kode program dan contohnya G'ukup sederhana sehingga tidak membingungkan, saat Anda mcncobanya. Oleh karenanya sangat tepat jika keberadaan buku ini digunakan sebagai referensi pada matakuliah Pcmrograman visual dengan Visual Basic .NET dan untuk belqiar sendiri sebagai panduan praktis, khususnya bagi Anda yang berkecimpung pada teknologi .NET. Harapan penulis rotclah membaca buku ini, Anda akan lebih siap untuk hrlskukan pengembangan-pengembangan sendiri khususnya lentang pemrograman dalam menangani database yang lebih kompleks dan handal. Krtr
Pengantar
vii
Penulis yakin dan percaya bahwa keberhasilan Anda dalam mempelajari buktl ini juga tergantung dari ketelitian dan ketelatenan Anda dalam mencoba contoh-contoh dan latihan yang ada di dalamnya. Saran kami, banyak kode program dalam buku ini yang diputus penulisannya. Hal ini dikarenakan keterbatasan dari lebar buku yang tidak mampu men€rmpung panjang baris kode program yang digunakan. Akhir kata semoga keberadaan buku ini bermanfaat bagi kita s.emua serta menambah khasanah pustaka Indonesia. Kumandangkan moto, "senantiasa berani mencoba dan tetap semangat dalam belajar mauPun bekerJa !"
KATA PENGANTAR DAF"TAR ISI
BAB
vlt lx
PEMROGRAMAN BERORIENTASI OBYEK
1
1.1 Dasar-dasar OOP 1.2 Penuangan Konsep OOP
Surabaya, Juli 2007
..
...................
..................,......
1 1
3 3
1.2.1 Komponen-komponen OOP .......... 1.2.2 Fitur-fitur Pendukung Konsep OOP s 1.2.3 Constructor dan Destructor 6
Penulis
1.3 Inheritance ........ 8 1.3.1 Base Class dan Subclass ............. 8 1.3.2 Membuat Base Class dan Subclass 9 1.3.3 Macam-macam Keyword .............. 17 1.3.4 Multi-level lnheritance 19 1.4 Polymorphism 22 1.4.1 Method Overloading ..................... 22 7.4.2 Method Overriding 25 I.4.3 Shadowing .................. 29 1.5 Encapsulation 35
IAB
viii
Kata Pengantar
:
2
Drftar
lsi
PEMAKAIAN USER CONTROL
... 37
2.1 Extended Control .................. 37 2.2 Composite Control ................................. 39 2.3 Membuat User Control 40 2.3.1 User Control untuk Ruang Lingkup Sempit .................:...... 40 2.3.2 User Control untuk Ruang Lingkup Luas ........ .. 45 2.4 Menggunakan User Control ................... 48 2.4.1 User Control dari Proyek Sendirj .. 48 2.4.2 User Control dari Proyek Lain ...... 50 ix
BAB 3
DASAR.DASAR PEMROGRAMAN ADO.NET L Pengantar ADO.NET ............. 3.2 Namespace pada ADO.NET' 3.3 Model Obyek ADO.NET 3.4 Pengertian Aplikasi Terkoneksi dan Aplikasi Terputus 3.5 Perlengkapan Pemrograman Database ... 3.5.1 Server Explorer 3.5.2 Query Builder 3.5.3 Database Designer ............. 3.5.4 Table Designer 3.
BAB 4
4.6.1 4.6.2 4.6.3 4.6.4
x
Program Program Program Program
5.2. 1 Properti Connectionstring ............ t44 5.2.2 Metode Open dan Close ...............149 5.2.3 Mengatasi Kegagalan Koneksi ...... 1SO
57 s8 59
5.3 Obyek Command .................. 1S1 5.3.1 Metode ExecuteReader ................. 153 5.3.2 Metode ExecuteScalar .................. 157 5.3.3 Metode ExecuteNonQuery ............ 159 5.3.4 Metode ExecuteXmlReader .......... 165 5.4 Obyek DataReader .............. .. 168 5.5 Pemakaian Strored Procedure .............. ..12O 5.5.1 Membuat Stored Procedure ..........I2L 5.5.2 Pemakaian Variabel dan
61 62 62
66 67 68
MENGGUNAKAN KOMPONEN ADO.NET ..... 69 69 4.1 .NET Data Provider .......... 4.2 Komponen-komponen ADO.NET ............ 7 1 7L 4.2.1 Toolbox Tab Data ........ 4.2.2 Membuat Koneksi Database ........ 72 78 4.2.3 Membuat DataAdapter 82 4.2.4 Membuat Dataset ............ 85 4.3 Menampilkan Data pada Tabel 87 4.3.1 Menggunakan DataGrid 89 4.3.2 Mehggunakan ListView 4.4 Metode Pencarian pada DataTable ......... 9L 91 4.4.1 Metode Find 94 4.4.2 Metode Contains .............. 96 4.4.3 Metode Select 100 Kunci ....... Dua Pencarian dengan 4.4.4 4.5 Metode Pencarian Data pada Data View . 110 ........ 110 4.5.1 Metode RowFilter ................ 115 4.5.2 Metode Find 4.5.3 Metode FindRows ........................ 1 19 4.6 Program Maintenance dengan Kontrol
ADO.NET
BAB 5
57
.............124 Input Data ........ ............. L24 Ubah Data ..................... 131 Hapus Data ................... 135 Lihat Data ..................... 137
Parameter pada Program
...........
..l7g
5.6 Pemakaian Transaction .........................
189
BAB6
AI'O.NET PN)A APLIKASI TERPUTUS ..... 195 6. 1 Pengertian Aplikasi Terputus ................. I95 6.2 Obyek DataAdapter ............. ..196 6.3 Obyek Dataset ..... 198 6.3.1 Membuat Dataset ....... 198 6.3.2 DataTable ......... ..........2OO 6.3.3 DataColumn ...............2O2 6.3.4 Constraints .................2O3 6.3.5 Data Relationships .......... ............ 2ll 6.3.6 Metode dan Properti Dataset..... .... 2lZ 6.3.7 Mengisi Dataset .............. ............. 227 6.3.8 Menyimpan Perubahan Dataset ...229
lre
BEXIR"'A DENGAN DATA BINDING ......... 23I 7.1 Pengertian Data Binding .......23t
z
7
.1.
I
BindingContext .......... .................. 252
7.2 Mer:ggtnakan Obyek CurrencyManager 233 7.3 Bekerja dengan Kontrol Data-Bound .....239 7.3.1 Tipe Data Binding .......24O
ADO.NET PN)A APLIKASI TERKONEKSI . 143 5.1 System.Data.Namespace ....... 143 ................144 5.2 Obyek Connection Pemrograman Database Visual Basic .NET
.,......172
5.5.3 DML dengan Stored Procedure .....174 5.5.4 Parameter pada Obyek Command 176 5.5.5 Memasang Stored Procedure
Drfhr
lrl
xi
BAB 8
:
MEMBUAT & MENCETAK LAPORAN ........ 243 8.1 Membuat Dokumen Report Baru ...'..'.....244 8.2 Model Implementasi Sumber Data .-........257 ...'.....258 8.3 Crystal Report Designer .'.........'.... 258 8.3.1 Field Explorer ..............262 8.3.2Toolbar ............ .............263 8.3.3 Report Designer 8.4 Menggunakan Formula dan Fungsi -.-......264 .....265 8.4.1Menuliskan Formula 8.4.2 Menempatkan Formula Pada
Laporan
0.4.1 Langkah-langkah persiapan ....349 10.4.2 Langkah-langkah pemrograman 3S2 I O.5 Menggunakan Web Service .................. 857 10.6 Data ADO.NE"[ D-engan Web Services ... 361 f
BAB
Il
:
DISTRIBUSI PROGRAM ............371 l1.l Template Setup dan Deployment .........372 11.2 Membuat Program Setup ....572 11.2.1 Menggunakan Setup Wizard ....574 I 1.3 Properti Aplikasi Setup ....... S8O I1.4 Macam-macuun Editor Setup ............... S82 I I .4.1 FiIe System Editor .. 883 11.4.2 Registry Editor ........386 11.4.3 File Tlrpes Editor .....388 | | .4.4 User Interface Editor ................ 988 1 1.4.5 Custom Actions Editor ............. 3gO 11.4.6 Launch Conditions Editor ........ 39t 11.5 Membangun Program Setup ................ Sg3 I 1.6 Program Setup untuk Crystal Reports . 3g3
tsAB
12
:
MEMBUAT PROGRAM F I -ONLINE HELP.....397 12.1 Menyiapkan Desain File Online Help ...3g7 12.2 Membuat HTML Help Project ...............4OO 12.2.1 Membuat File Topic .................. +OS 12.3 Membuat Table of Contents .............. ...4OT 12.3.1 Membuat Heading ...4t1 ' 12.3.2 Menyisipkan Halaman ..............4f 3 12.4 Membuat File Index Help .....................4f 5 12.5 MembuatKeyword .......... ....415 12.6 Bekerja Dengan File Help ...418 12.6.1 Membuat File Help ..419 | 2.6.2 Menampilkan FiIe Help ........ ..... 42O 12.7 Membuat Link ...422 12.8 Memasang File HeIp pada Prograrn ......424
........268
8.4.3 Menambahkan Special Field Teks ...272 8.4.4 Formulq, dengan Struktur Kontrol ..275 8. 5 Menggunakan CrystalReportViewer -....... 27 6 -..'...28O 8.6 Menyeleksi Data Laporan atau String Bertipe Data 8.6.1Seleksi
.......281 Numerik 8.6.2 Seleksi Data Bertipe Date ..............287 8.7 Mengirimkan Data ke Laporan ................293 8.8 Mendeklarasikan Variabel pada Form:ula 298 8.9 Bekerja Dengan Grafik dan Gambar .......306 8.9.1 Membuat Grafik pada Laporan ....... 306 8.9.2 Mencetak Gambar pada Laporan ....316
BAB 9
BAB
xii
:
10 :
PEMROGRAMAN N)O.NET PADA
XML .....321
.........321 9.1 Dasar-dasar XML ......... .-...322 9.1.1 Element ........'...323 9.1.2 Atribute .......... ....323 9.2 BekerjaDenganXML ........ ..324 ........ XML Penulisan 9.3 Aturan .......325 XML Schema 9.4 9.4.7 Membuat Schema Sendiri ............325 ......332 9.5 Membuat XML File .......... 9.6 Metode WriteXML dan ReadXML ..........'.335 9.7 Pemakaian XMlDataDocument ..'..'....... 338
...345 ADO.NET DAN UIEB SERVICE .......345 10.1 Pengertian V/eb Service .-....'.346 10.2 Arsitektur Web Service 10.3 Komponen Dasar Web Service ..............347 10.4 Membangun Web Service ..'.......... ........349 Pemrograman Database Visual Basic .NET
Dlfirr
lsl
xiii