Kenalan dengan LinQ to SQL – Sample Project

LinQ atau Language Integrated Query merupakan fitur yang memungkinkan pengaksesan data dengan menggunakan sintaks bahasa pemrograman. LinQ ada sejak .NET framework versi 3.5. Dengan menggunakan LinQ, pengaksesan data baik Objek, XML, atau basis data menjadi lebih mudah. Bila data yang diakses berasal dari basis data maka LinQ akan menerjemahkan ke dialek SQL basis data tersebut sehingga query menjadi lebih independen karena tidak bergantung dengan dialek SQL tertentu.

Sample Project: Menampilkan data dari database ke windows form.

Pertama buat database baru, misal Campus. Kemudian buat table baru dengan nama Students yang kolomnya seperti berikut:
table

Buat Windows Form Project baru di Visual Studio 2008, misal diberi nama LinQProject kemudian OK.
new project

Kemudian tambahkan Item baru di project, Data – LinQ to SQL Classes, beri nama Student.dbml, klik Add.
add item
linq to sql

Bila belum ditampilkan, tampilkan window Server Explorer di menu View – Server Explorer.
Kemudian klik icon “Connect to Database” di window Server Explorer. Lalu tentukan server name dan nama database-nya.
connect to server

Lalu klik dua kali pada file Student.dbml di window Solution Explorer untuk mengedit file tersebut.
Klik dan drag tabel Students lalu drop di Student.dbml.
linq designer

Kemudian di Form1 Designer, tambahkan GridView untuk menampilkan data Student di windows form nantinya. Klik dua kali di window (bukan di GridView) untuk membuat method Form1_Load sebagai handler Load event. Kemudian tambahkan kode berikut di class Form1:

    private void Form1_Load(object sender, EventArgs e)
    {
        StudentDataContext dataContext = new StudentDataContext();
        var students = from std in dataContext.Students
                       select std;
        dataGridView1.DataSource = students.ToList();
    }

window

Pada kode di atas, untuk mengambil data dari table kita menggunakan objek dataContext yang merupakan instance dari class StudentDataContext. Di baris 4, merupakan query LinQ. Terlintas mirip dengan SQL, keyword yang digunakan pun juga sama (meskipun tidak semua). Kode tersebut berfungsi untuk mengambil semua data Student yang ada di tabel. Misalkan kita ingin mengambil data Student yang lahir di kota Tangerang, maka kode pada baris 4 seperti ini:

4
5
6
var students = from std in dataContext.Students
               where std.birthPlace == "Tangerang"
               select std;

Nah, mudah bukan menggunakan LinQ?. Selamat mencoba. :D