Pemrograman Visual
MODUL 7 dan 8
LINQ PADA VB.NET
Disusun oleh: S. Thya Safitri,MT Agus Priyanto, M.Kom
Purwokerto 2016 ST3 Telkom - Program Studi S1 Teknik Informatika
Page 1
Pemrograman Visual
A. TUJUAN - Mahasiswa dapat memahami penggunaan LINQ pada VB.Net - Mahasiswa dapat mengimplementasikan provider LINQ yaitu Linq to Object, Linq to XML, Linq to Database SQL, Linq to Dataset dan Linq to Entity B. PERANGKAT LUNAK - Microsoft Visual Basic 2012 C. DASAR TEORI 1. Linq LINQ merupakan singkatan dari Language Integrated Query, LINQ merupakan fasilitas yang disediakan pada .Net Framework 3.5 dan telah terintegrasi apabila kita menginstall Visual Basic. Perbedaan LINQ dengan Query adalah LINQ memiliki kemanpuan melakukan query data terhadap format lain, misalnya XML, Entitas, Object, dll. LINQ dapat digunakan untuk melakukan query apabila format data tersebut mendukung Ienumerable Type. Analogi penggunaan LINQ adalah LINQ dapat diibaratkan sebuah kunci yang dapat digunakan untuk masuk ke dalam beberapa ruang. Jadi akan lebih mudah daripada harus memiliki banyak kunci untuk masuk ke dalam beberapa ruang. Pada tahun 2005, LINQ pertama kali diperkenalkan oleh Anders Hejlsberg di Microsoft profesional Developers Conference (PDC). Tujuan Anders Hejlsberg memperkenalkan Linq adalah membuat standarisasi dan memudahkan proses pengaksesan data.
Gambar 1. Arsitektur LINQ pada proses pengaksesan data Linq dapat digunakan untuk melakukan query pada beberapa format data, yaitu: LINQ to Object LINQ to XML LINQ to Database (SQL dan Dataset) LINQ to Entity ST3 Telkom - Program Studi S1 Teknik Informatika
Page 2
Pemrograman Visual 2. Linq to Object Fungsi Linq yang digunakan untuk melakukan proses query kedalam sebuah Object (Array, Array List, Hash Table, User Define Arraylist Collection, dll) 3. Linq to XML Linq yang mampu melakukan proses query kedalam format struktur data XML. 4. Linq to Database Fungsi Linq untuk mengakses data pada sebuah database 5. Linq to Entity Proses query dilakukan tidak langsung ke data, melainkan ke sebuah object dari data tersebut.
D. PRAKTIKUM 1. Linq to Object 1.1 ARRAY COLLECTION a. Buatlah sebuah project Console Application dengan nama prj_LinqToObject1_NIM b. Pada Module, ketikkan script yang berisi Array Collection berikut ini:
c. Jalankan dan amati hasil nya dan tuliskan pada laporan praktikum anda d. Ubah query tersebut untuk menampilkan nama mahasiswa yang memiliki huruf “t”. Apabila sudah, maka silahkan panggil dosen atau asisten praktikum untuk mengecek pekerjaan anda. 1.2 HASHTABLE COLLECTION a. Buatlah sebuah project Console Application dengan nama prj_LinqToObject2_NIM b. Pada Module, ketikkan script yang berisi HashTable Collection berikut ini:
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 3
Pemrograman Visual
e. Jalankan dan amati hasil nya dan tuliskan pada laporan praktikum anda f. Lakukan modifikasi query untuk menampilkan mata kuliah yang memiliki id ganjil g. Apabila sudah, maka silahkan panggil dosen atau asisten praktikum untuk mengecek pekerjaan anda. 1.3 USER DEFINE ARRAYLIST COLLECTION a. Buatlah sebuah project Console Application dengan prj_LinqToObject3_NIM b. Buat sebuah class MataKuliah yang berisi code berikut ini
c.
nama
Pada Module, tuliskan code berikut ini:
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 4
Pemrograman Visual
d. e. f. g. h.
2.
Jalankan dan amati hasil nya dan tuliskan pada laporan praktikum anda Buatlah sebuah atribut tambahan pada Class MataKuliah yaitu: Tanggal_Kuliah yang bertipe dd/mm/yyyy Sesuaikan object pada Module Lakukan query untuk memanggil mata kuliah yang memiliki sks=2 Apabila sudah, maka silahkan panggil dosen atau asisten praktikum untuk mengecek pekerjaan anda.
Linq to XML a. Buatlah sebuah project Console Application prj_LinqToXML_NIM b. Tuliskan script pada Module1 sebagai berikut:
c.
dengan
nama
Jalankan dan amati hasil nya dan tuliskan pada laporan praktikum anda
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 5
Pemrograman Visual 3.
Linq to Database a. Buat sebuah project Windows Form Application, kemudian beri nama project tersebut prj_LinqToSQL_NIM b. Buatlah sebuah “Data Connection” dengan database server. Caranya adalah View – Server Explorer – Data Connection – Create New SQL Server Database
c. Buatlah Database bernama LinqToSQL
d. Buatlah table pada database LinqToSQL tersebut dengan ketentuan sbb: Nama Tabel Field Tipe data prodi id_prodi (PK) Varchar(3) nama_prodi Varchar(35) dosen id_dosen (PK) Varchar(3) nama_dosen Varchar(35) alamat Varchar(50) nidn int ST3 Telkom - Program Studi S1 Teknik Informatika
Page 6
Pemrograman Visual
e. Setelah berhasil,maka akan tertampil 2 buah tabel yang telah dibuat
f. Tambahkan item LINQ To Classes. Dengan cara klik kanan pada nama project – Add – Add New Item – Data – Linq to SQL Classes Beri nama LinqToSQL
g. Pilih tabel dari database, kemudian lakukan drag and drop pada LinqToSQL.dbml ST3 Telkom - Program Studi S1 Teknik Informatika
Page 7
Pemrograman Visual
h. Tambahkan tabel untuk LinqToSQL.dbml
i. Buatlah sebuah button dengan nama btnLinqToSQL di form1, kemudian masukkan script berikut ini di form Load
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 8
Pemrograman Visual j. Sebelum menjalankan program tersebut, isi terlebih dahulu database prodi dan dosen dengan data-data sebagai berikut Tabel : prodi id_prodi nama_prodi 1 IF 2 TT 3 SI Tabel: dosen id_dosen nama_dosen DS Didi Supriyadi AH Alfin Hikmaturokhman STS Sisilia Thya Safitri AEA Andika Elok Amalia
alamat Purwokerto Kober
NIDN 0618038404 0621087801
id_prodi 1 2
Puri Hijau
0631078701
3
GOR
0610029001
1
k. Amati hasil yang terjadi dan lakukan pembahasan l. Buatlah sebuah tabel baru bernama mata_kuliah dengan struktur tabel sebagai berikut: id_mata_kuliah varchar(4) nama_mata_kuliah varchar(40) sks int id_dosen varchar(3) m. Modifikasi code yang sudah ada untuk menampilkan nama mata kuliah yang diampu oleh Dosen Didi Supriyadi pada sebuah Data Grid n. Apabila sudah, maka silahkan panggil dosen atau asisten praktikum untuk mengecek pekerjaan anda 4.
Linq to Entity a. Buatlah sebuah project Windows Form Application dengan nama prj_LinqToEntity b. Lakukan penyambungan ke database LinqToSQL c. Tambahkan sebuah Item pada project tersebut dengan cara klik kanan pada project kemudian pilih ADO. Net Entity Data Model
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 9
Pemrograman Visual
d. Sambungkan ke database
e. Pilih Database LinqToSQL. Database yang dibuat ini akan ditampung dalam sebuah entitas
f. Pilih semua tabel yang akan digunakan, kemudian click Finish
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 10
Pemrograman Visual
g. Buatlah desain form dengan tampilan sebagai berikut:
txtKodeProdi btnCari
txtNamaProdi btnUbah
h. Tuliskan script pada btnCari dan btnUbah menjadi seperti
i.
Ubahlah script tersebut agar dapat menampilkan kode_prodi dan nama_prodi berdasarkan inputan user di txtKodeProdi j. Apabila sudah, maka silahkan panggil dosen atau asisten praktikum untuk mengecek pekerjaan anda ST3 Telkom - Program Studi S1 Teknik Informatika
Page 11
Pemrograman Visual E. Evaluasi Secara pribadi, silahkan lakukan analisis terhadap hal-hal berikut ini dan tuliskan dalam Laporan Praktikum anda: 1. Pada 1)1.1.c? (5) 2. Pada 1)1.2.e? (5) 3. Pada 1)1.1.d? (5) 4. Pada 3.k? (5) F. Tugas 1. 1.1.d 2. 1.2.f 3. 1.3.h 4. 3.n 5. 4.j 1. Form Evaluasi
Hasil Analisa Praktikum:
ST3 Telkom - Program Studi S1 Teknik Informatika
Page 12