Laporan Pemrogaman Chapter 9

download Laporan Pemrogaman Chapter 9

of 18

Transcript of Laporan Pemrogaman Chapter 9

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    1/18

    LAPORAN PEMROGAMAN

    BASIS DATA JARINGAN

    Mengenal ADO.NET

    Disusun oleh:

    Ajeng Yona Falah

    Informatika 3A

    3.34.12.0.01

    PROGAM STUDI TEKNIK INFORMATIKA

    JURUSAN TEKNIK ELEKTRO

    POLITEKNIK NEGERI SEMARANG

    2014/2015

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    2/18

    I. Tujuan Instruksional Khusus

    Setelah menyelesaikan praktek ini, mahasiswa diharapkan mampu:

    1.

    Mengenal ADO.NET

    2.

    Memahami ADO.NET3. Mengerti bagaimana Visual NET (VB NET) Basic program dapat berinteraksi

    dengan ADO.NET

    II. Dasat Teori

    Mengenali ADO.NET

    ADO.NET adalah teknologi akses data dari Microsoft .Net Framework. Yang

    menyediakan komunikasi antara sistem relasional dan non-relasional melalui

    seperangkat komponen. ADO.NET terdiri dari serangkaian Objek yang

    mengekspos layanan akses data ke lingkungan NET. ADO.NET dibangun untuk

    arsitektur terputus, sehingga memungkinkan benar-benar terputus dengan sumber

    data dapat dilakukan manipulasi melalui Objek Dataset, yang benar-benar

    independen dari Sumber Data(database).

    Dua komponen kunci dari ADO.NET adalah Data Providers dan DataSet. Di

    dalam .Net Framework terdapat tiga Penyedia untuk Akses Data. Yaitu Microsoft

    SQL Server Data Provider, OLEDB Data Provider dan ODBC Data Providers. SQL

    Server menggunakan obyek SqlConnection, OLEDB menggunakan Objek

    OleDbConnection dan ODBC menggunakan OdbcConnection.

    ADO.NET menyediakan objek untuk mengolah data . yaitu :

    1. Objek Connection : menyediakan koneksi Sumber Data (Database)

    2.

    Objek Command : digunakan untuk melakukan pernyataan SQL atau prosedur

    yang akan dilaksanakan pada Database

    3. Obyek DataReader : Aliran berbasis, forward-only, read-only pengambilan

    hasil query dari Sumber Data (database)

    4. Objek DataAdapter : mengisi Object Dataset dengan hasil dari Sumber Data

    DataSet memberikan representasi terputus hasil query dari Sumber Data, dan

    itu benar-benar independen dari Sumber Data(database). DataSet memberikan

    fleksibilitas jauh lebih besar ketika berhadapan dengan manipulasi data. DataSetterdiri dari kumpulan objek DataTable yang dapat berhubungan satu sama lain

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    3/18

    dengan DataRelation. DataTable berisi koleksi DataRow dan DataCoulumn. Objek

    DataAdapter menyediakan sebuah jembatan antara DataSet dan Sumber Data.

    Data Provider mengandung beberapa object antara lain:

    Connection object (SqlConnection, OleDbConnection, OdbcConnection,

    OracleConnection)

    Command object (SqlCommand, OleDbCommand, OdbcCommand,

    OracleCommand)

    DataReader object (SqlDataReader, OleDbDataReader, OdbcDataReader,

    OracleDataReader)

    DataAdapter object (SqlDataAdapter, OleDbDataAdapter,

    OdbcDataAdapter, OracleDataAdapter).

    ADO.NET dan .NET Base Class Library

    Sebuah dataset (objek DataSet) dapat menyimpan sejumlah data dalam bentuk

    tabel, relasi antar tabel, dan kendala (Kendala objek) di dalam memori cache, yang

    kemudian dapat diekspor ke file eksternal atau dataset lain. Sejak dukungan XML

    terintegrasi ke ADO.NET, kita dapat menghasilkan skema XML dan mengirim data

    menggunakan dokumen XML.

    Tabel 9-1 menjelaskan komponen yang terdapat dalam ADO.NET.

    Karena dukungan XML telah terintegrasi ke dalam ADO.NET, beberapa komponen

    ADO.NET dalam namespace System.Data mengandalkan komponen dalam

    namespace System.Xml. jadi, kadang-kadang kita perlu menyertakan kedua ruang

    nama sebagai referensi di Solution Explorer.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    4/18

    Ruang nama berikut ini secara fisik diimplementasikan sebagai majelis, dan jika

    kita membuat projek baru Visual Studio 2013, referensi ke majelis secara otomatis

    akan dibuat, dan mengacu pada perakitan System. Namun, jika mereka tidak hadir,

    hanya lakukan langkah-langkah berikut untuk menambahkan ruang nama untuk

    proyek Anda:

    1. Klik kanan item Referensi di Solution Explorer, kemudian klik Add Reference.

    2.

    Sebuah kotak dialog akan menampilkan daftar referensi yang tersedia. Pilih

    System.Data, System.Xml, dan Sistem yang kita buat (jika belum ada) satu per

    satu (tahan tombol Ctrl untuk memilih beberapa system sekaligus), lalu klik

    tombol Select.

    3. Klik OK, dan referensi akan ditambahkan ke proyek.

    Memahami Arsitektur ADO.NET

    Gambar berikut ini menyajikan fitur arsitektur yang paling penting dari ADO.NET.

    Gambar 9-1. Arsitektur ADO.NET

    ADO.NET memiliki dua komponen utama: data provider dan dataset.

    Sebuah data provider terhubung ke sumber data dan mendukung akses data dan

    manipulasi.

    Sebuah dataset mendukung disconnected model, caching independen data secara

    relasional, memperbarui sumber data yang diperlukan. Sebuah dataset berisi satu

    atau lebih tabel data. Sebuah tabel data adalah representasi baris-dan-kolom yang

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    5/18

    menyediakan banyak pandangan logis yang sama sebagai fisik tabel dalam

    database. Sebagai contoh, kita dapat menyimpan data dari database Northwind tabel

    Employees ke dalam tabel data ADO.NET dan memanipulasi data yang diperlukan.

    Pada Gambar 9-1, perhatikan kelas DataView (dalam namespace System.Data). Ini

    bukan komponen dari data provider. Data View digunakan terutama untuk mengikat

    data ke Windows dan bentuk web.

    Seperti yang kita lihat pada Tabel 9-1, masing-masing penyedia data memiliki

    namespace sendiri. Bahkan, setiap data provider pada dasarnya merupakan

    implementasi dari interface dalam namespace System.Data, khusus untuk jenis

    tertentu sumber data.

    Sebagai contoh, jika kita menggunakan SQL Server, kita harus menggunakan data

    provider SQL Server (Sistem.Data.SqlClient) karena itu adalah cara yang paling

    efisien untuk mengakses SQL Server.

    OLE DB data provider mendukung akses ke versi SQL Server serta database lain,

    seperti Access, DB2, MySQL, dan Oracle. Namun, data provider asli (seperti

    System.Data.OracleClient) lebih disukai untuk kinerja, karena OLE DB data

    provider bekerja melalui dua lapisan lainnya, yaitu OLE DB service component dan

    OLE DB data provider, sebelum mencapai sumber data.

    Gambar 9-2 mengilustrasikan perbedaan antara menggunakan SQL Server dan OLE

    DB data provider untuk mengakses database SQL Server.

    Gambar 9-2. Perbedaan SQL Server dan OLE DB data provider

    Jika aplikasi kita terhubung ke versi lama dari SQL Server (6,5 atau lebih) atau lebih

    dari satu jenis database server pada saat yang sama (misalnya, Access dan Oracle

    database), maka kita harus memilih untuk menggunakan OLE DB data provider.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    6/18

    Tidak ada aturan hard-and-fast exist; dengan menggunakan OLE DB data provider,

    kita dapat menggunakan dua data provider SQL Server dan Oracle data provider

    (System.Data.OracleClient) jika kita ingin.

    Bekerja dengan SQL Server Data Provider

    .NET data provider untuk SQL Server adalah System.Data.SqlClient. Meskipun

    kita dapat menggunakan System.Data.OleDb untuk terhubung dengan SQL Server,

    Microsoft khusus merancang namespace System.Data.SqlClient untuk terhubung

    dengan SQL Server, dan bekerja dengan cara yang lebih efisien dan optimal

    dibandingkan System.Data.OleDb. Alasan untuk efisiensi dan mengoptimalkan

    pendekatan adalah bahwa data provider yang bersangkutan berkomunikasi

    langsung dengan server menggunakan protokol jaringan asli bukan melalui

    beberapa lapisan.

    Tabel 9-2 menjelaskan beberapa kelas penting dalam namespace SqlClient.

    Namespace lain seperti System.Data.SqlTypes, memetakan tipe data SQL Server

    untuk jenis NET, baik meningkatkan kinerja dan membuat pengembang hidup jauh

    lebih mudah.

    Bekerja dengan OLE DB Data Provider

    Diluar .NET, OLE DB masih merupakan teknologi akses data Microsoft yang tinggi

    performa. Data provider OLE DB telah digunakan sebagai akses data sejak lama.

    Data Provider .NET Framework untuk OLE DB ini berada di dalam

    System.Data.OleDb.

    Tabel 9-3 Kelas OleDb yang sering digunakan

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    7/18

    Data provider OLE BD milik ADO.NET membutuhkan sebuah provider OLE DB

    yang lebih spesifik pada connection string.

    Bekerja dengan ODBC Data Provider

    ODBC merupakan teknologi pertama yang digunakan Microsoft di dalam

    pengaksesan data dan masih digunakan hingga saat ini sebagai pada data source

    yang tidak memiliki provider OLE DB ataupun .NET Framework. Data provider

    ODBC ini terdapat di dalam System.Data.Odbc.

    Arsitektur ODBC ini pada dasarnya merupakan proses tiga-tingkat. Sebuah aplikasi

    menggunakan fungsi ODBC untuk menyampaikan permintaan database. ODBC

    mengkonversi fungsi panggilan ke protokol dari driver yang spesifik ke data source

    yang tersedia. Driver tersebut berkomunikasi dengan data source, mengirimkan

    hasil maupun error kembali ke ODBC.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    8/18

    Membuat ODBC Data Source

    1. Pada Control Panel, klik ganda pada Administrator Tools

    2. Pada Administrative Tools, klik ganda pada Data Sources.

    3.

    Ketika terbuka, klik tab User DSN dan klik Add.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    9/18

    4.

    Pertama, pilih driver SQL Server, lalu klik Finish.

    5.

    Masukkan nilai untuk Nama dan Server menjadi NorthwindOdbc dan nama pc

    Anda.

    6. Biarkan setting default pada window Authenticasi dengan klik Next.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    10/18

    7.

    Di window setelahnya, beri cek pada opsi Change the default database to, pilih

    Northwind database dan klik Next.

    8. Pada window selanjutnya, klik Finish

    9. Window konfirmasi akan muncul dan berisi deksripsi dari data source yang baru

    saja dibuat. Klik Test Data Source.

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    11/18

    10.

    Sebuah laporan sukses seharusnya akan keluar. (Jika tidak, batalkan setting

    tersebut dan coba kembali.) Klik OK.

    11.Ketika window kembali ke window konfirmasi, klik OK. Ketika window ODBC

    Data Source Administrator muncul kembali, data source yang baru akan berada di

    dalam list. Klik OK.

    III. Alat dan Bahan

    1. SQL Server 2014

    2. Visual Basic NET

    3. Northwind Sample Database

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    12/18

    IV. Langkah Kerja

    A. Membuat Aplikasi Console Sederhana Menggunakan SQL Server Data

    Provider

    1.

    Buka Visual Studio 2013 dan buat project console baru dengan namaChapter09.

    2. Klik kanan project Chapter09 dan ubah nama menjadi SqlServerProvider.

    3.

    Klik kanan file Module1.vb dan ubah namanya menjadi

    SqlServerProvider.vb

    4.

    Ketikkan kode berikut ini pada halaman code editor SqlServerProvider.vb

    ImportsSystemImportsSystem.DataImportsSystem.Data.SqlClientModuleSqlServerProvider

    SubMain()'membuat variabel timerDimtimer AsStopwatch= Stopwatch.StartNew

    'Set up connection stringDimconn AsNewSqlConnection

    conn.ConnectionString = "Data Source=AJENG; InitialCatalog=Northwind;Integrated Security=True"

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    13/18

    'Set up query stringDimsql AsString= "select * from employees"'Declare data reader variablesDimreader AsSqlDataReader= Nothing

    'memulai menghitung waktutimer.Start()

    Try' Open connectionconn.Open()' Execute the queryDimcmd AsNewSqlCommand(sql, conn)reader = cmd.ExecuteReader()' Display output headerConsole.WriteLine("This program demonstrates the use of

    the SQL Server Data Provider.")Console.WriteLine("Querying database {0} with query {1}"+

    ControlChars.NewLine, conn.Database, cmd.CommandText)Console.WriteLine("First Name"+ ControlChars.Tab + "Last

    Name"+ ControlChars.Lf)' Process the result set

    Whilereader.Read()Console.WriteLine("{0} | {1}",

    reader("FirstName").ToString().PadLeft(10),reader(1).ToString().PadLeft(10))

    EndWhileCatche AsException

    Console.WriteLine("Error: ", e)Finally

    ' Close reader and connectionreader.Close()conn.Close()

    EndTry'berhenti menghitung waktutimer.Stop()

    Console.WriteLine()Console.WriteLine("Total waktu = "&

    timer.Elapsed.TotalSeconds & "detik")EndSub

    EndModule

    5. Simpan project, kemudian tekan Ctrl+F5 untuk melihat hasilnya.

    B. Membuat Aplikasi Console Sederhana Menggunakan OLE DB Data

    Provider

    1.

    Pada Solution Explorer, tambahkan Aplikasi Console baru dengan nama

    OleDbProvider pada Chapter09 solution.

    2. Ubah nama file Module1.vb menjadi OleDbProvider.vb

    3. Ketikkan kode berikut ini pada halaman code editor OleDbProvider.vb

    ImportsSystem

    ImportsSystem.DataImportsSystem.Data.OleDb

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    14/18

    ModuleOleDbProvider

    SubMain()'membuat variabel timerDimtimer AsStopwatch= Stopwatch.StartNew

    'Set up connection string

    Dimconn AsNewOleDbConnectionconn.ConnectionString = "Provider=sqloledb;Data

    Source=AJENG;Initial Catalog=Northwind;Integrated Security=sspi"

    'Set up query stringDimsql AsString= "select * from employees"

    'Declare data reader variableDimreader AsOleDbDataReader= Nothing

    'memulai menghitung waktutimer.Start()Try

    ' Open connection

    conn.Open()' Execute the queryDimcmd AsNewOleDbCommand(sql, conn)reader = cmd.ExecuteReader()' Display output headerConsole.WriteLine("This program demonstrates the use of

    the OLE DB Data Provider.")Console.WriteLine("Querying database {0} with query {1}"+

    ControlChars.NewLine, conn.Database, cmd.CommandText)Console.WriteLine("First Name"+ ControlChars.Tab + "Last

    Name"+ ControlChars.Lf)' Process the result set

    Whilereader.Read()

    Console.WriteLine("{0} | {1}",reader("FirstName").ToString().PadLeft(10),reader(1).ToString().PadLeft(10))

    EndWhileCatche AsException

    Console.WriteLine("Error: ", e)Finally

    ' Close reader and connectionreader.Close()conn.Close()

    EndTry'menghenitkan penghitungan waktutimer.Stop()Console.WriteLine()

    Console.WriteLine("Total waktu = "&timer.Elapsed.TotalSeconds & "detik")

    EndSub

    EndModule

    4.

    Simpan project, kemudian tekan Ctrl+F5 untuk menampilkan hasilnya.

    C. Membuat Aplikasi Console Sederhana Menggunakan ODBC Data

    Provider

    1.

    Pada Solution Explorer, tambahkan Aplikasi Console baru dengan nama

    OdbcProvider pada Chapter09 solution.

    2. Ubah nama file Module1.vb menjadi OdbcProvider.vb

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    15/18

    3. Ketikkan kode berikut ini pada halaman code editor OdbcProvider.vb

    ImportsSystemImportsSystem.DataImportsSystem.Data.OdbcModuleOdbcProvider

    SubMain()'membuat variabel timerDimtimer AsStopwatch= Stopwatch.StartNew

    'Set up connection stringDimconnString AsString= "dsn=northwindodbc"

    'Set up query stringDimsql AsString= "select * from employees"

    'Declare data reader variableDimreader AsOdbcDataReader= Nothing

    'memulai menghitung waktutimer.Start()Try

    ' Open connectionDimconn AsNewOdbcConnection(connString)conn.Open()

    ' Execute the queryDimcmd AsNewOdbcCommand(sql, conn)reader = cmd.ExecuteReader()

    ' Display output headerConsole.WriteLine("This program demonstrates the use of

    the ODBC Data Provider.")Console.WriteLine("Querying database {0} with query {1}"+

    ControlChars.NewLine, conn.Database, cmd.CommandText)Console.WriteLine("First Name"+ ControlChars.Tab + "Last

    Name"+ ControlChars.Lf)

    ' Process the result setWhilereader.Read()

    Console.WriteLine("{0} | {1}",reader("FirstName").ToString().PadLeft(10),reader(1).ToString().PadLeft(10))

    EndWhileCatche AsException

    Console.WriteLine("Error: ", e)Finally

    ' Close readerreader.Close()

    EndTry'berhwnti menghitung waktutimer.Stop()Console.WriteLine()Console.WriteLine("Total waktu = "&

    timer.Elapsed.TotalSeconds & "detik")EndSub

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    16/18

    EndModule

    4. Simpan project, kemudian tekan Ctrl+F5 untuk menampilkan hasilnya.

    V.

    Lembar KerjaNo Judul / Hasil / Keterangan

    1 Membuat Aplikasi Console Sederhana Menggunakan SQL Server

    Data Provider

    Berikut ini adalah hasil tampilan dari aplikasi dengan menggunakan SQL

    Server Provider. Untuk dapat terhubung ke SQL server, kita hanya perlumenggunakan datat provider yang sudah disediakan oleh Microsoft khusus

    untuk SQL Server, yaitu System.Data.SqlClient.

    2 Membuat Aplikasi Console Sederhana Menggunakan OLE DB Data

    Provider

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    17/18

    Berikut ini adalah hasil tampilan dari aplikasi dengan menggunakan

    Provider OLE DB. Provider OLE DB dapat digunakan untuk mengakses

    berbagai database. Untuk dapat menggunakan OLE DB, kita hanya perlu

    menggunakan System.Data.OleDb.

    3 Membuat Aplikasi Console Sederhana Menggunakan ODBC Data

    Provider

    Yang membedakan ODBC dengan provider lain adalah, ketika kita

    menuliskan string koneksi, yang perlu dituliskan hanya nama yang ada pada

    User Data Sources di jendela ODBC Administrator sebelumnya. Kita tidak

    pula harus menuliskan spesifikasi dari database karena sudah diatur ketika

    kita membuat Drived ODBC tersebut. Data provider ODBC ini terdapat di

    dalam System.Data.Odbc.

    Tabel Perbandingan

    SqlServerProvider OleDbProvider OdbcProvider

    Waktu Akses 1 0.1476551 0.0536881 0.0370839

    Waktu Akses 2 0.1056803 0.0406898 0.0704826

    Waktu Akses 3 0.0569578 0.0408424 0.0362890

    Waktu Akses 4 0.0370057 0.0557506 0.0373794

    Waktu Akses 5 0.0651008 0.0655520 0.0370527

    Waktu Akses 6 0.0393919 0.0447865 0.0359879

    Waktu Akses 7 0.0359657 0.0770566 0.0362706

  • 7/25/2019 Laporan Pemrogaman Chapter 9

    18/18

    Waktu Akses 8 0.0424268 0.0468759 0.0347234

    Waktu Akses 9 0.0536278 0.0460472 0.0384592

    Waktu Akses 10 0.0378143 0.0491248 0.0367102

    0.06216262 0.05204139 0.04004389

    Keterangan :

    Waktu Akses : Rata-rata waktu akses setiap 10 kali pengaksesan jendela konsol

    untuk menampilkan data yang diambil dalam jendela konsol dengan menggunakan

    SQL Server sebanyak 0.06216262 second, dengan menggunakan OLE DB

    sebanyak 0.05204139 second, sedangkan dengan menggunakan ODBC sebanyak

    0.04004389 second.

    VI. Kesimpulan

    1.

    Untuk dapat terhubung ke SQL server, kita hanya perlu menggunakan datat

    provider yang sudah disediakan oleh Microsoft khusus untuk SQL Server, yaitu

    System.Data.SqlClient.

    2. Untuk provider OLE DB, kita perlu menuliskan spesifikasi nama dari OLE DB

    (Provider=sqloledb). Tidak seperti SQL Server yang tidak perlu menuliskan

    spesifikasi dari nama providernya.

    3. Yang membedakan ODBC dengan provider lain adalah, ketika kita menuliskan

    string koneksi, yang perlu dituliskan hanya nama yang ada pada User Data

    Sources di jendela ODBC Administrator sebelumnya. Kita tidak pula harus

    menuliskan spesifikasi dari database karena sudah diatur ketika kita membuat

    Drived ODBC tersebut. Data provider ODBC ini terdapat di dalam

    System.Data.Odbc.