KONSEP OBYEK CONNECTION
Sebelum dapat bekerja dengan data pada aplikasi yang dibuat, terlebih dahulu anda harus membuat koneksi dan melakukan metode open agar komunikasi dengan databse dapat dilakukan.
NET DATA PROVIDER
Yaitu sekumpulan class-class yg digunakan untuk melakukan koneksi kedalam database,serta untuk mengambil dan meng-update data. ADO.NET mengklarifikasi beberapa tipe .NET Data Provider berdasarkan jenis database yang digunakan yaitu
1. SQL Server (SQL SERVER 7.0 keatas seperti SQL SERVER 2000 dan SQL SERVER 2005)
2. OLE.DB (SQL SERVER 6.5, Microsoft Access serta database lain yang memiliki provider OLE.DB)
3. ORACLE (Database Oracle versi 7.3, 8i, 9i)
4. ODBC (Database yang mempunyai driver ODBC)
PROPERTI CONNECTION STRING
Sebuah connection string mendefinisi parameter-parameter yang dibutuhkan didalam membuat suatu koneksi pada database. Diantaranya yaitu
1. Provider (khusus untuk OLE DB)
2. Data Source (nama dan letak server database)
3. Initial Catalog (nama database pada provider)
4. Integrated Security (verifikasi login pada database)
Contoh connection string
- SQL SERVER
“Data Source=MyComputer;Initial Catalog=pubs;Integrated Security=SSPI;”
- Microsoft Access
“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\path\mydb.mdb;UserId=admin;Password=;”
- Oracle
“Data Source=MyOracleDB;User Id=username;Password=passwd;Integrated Security=no;”
OBYEK COMMAND
Penggunaan perintah SQL secara dinamis langsung dari aplikasi anda. Perintah macam select, insert, update, delete, create tabel ataupun stored procedure harus menggunakan obyek SqlCommand.Contoh penulisan syntax-nya
Dim cmd As SqlCommand=New SqlCommand(“Perintah SQL”, oSQLConn)
Atau dengan menggunakan syntax berikut ini
Dim cmd As New SqlCommand
cmd.Connection = oSQLConn
cmd.CommandText = “Perintah SQL”
Berikut ini beberapa metode yang dapat dilakukan untuk menjalankan obyek command
1. ExecuteReader
Digunakan untuk menghasilkan sekumpulan data yang berbentuk DataReader yang bersifat read-only dan forward-only
2. ExecuteScalar
Digunakan untuk menghasilkan sebuah nilai, contoh
Dim cmd As SqlCommand = New SqlCommand(“select COUNT (*)from Mahasiswa”, oSQLConn)
cmd.Connection.Open()
Dim jmlMhs As String = cmd.ExecuteScalar
cmd.Connection.Close()
3. ExecuteNonQuery
Tidak menghasilkan nilai apapun tapi membawa banyaknya jumlah record dari perintah SQL tersebut. Cara penggunaan metode ExecuteNonQuery..
Dim cmd As SqlCommand = New SqlCommand(“insert into Mahasiswa values(‘05410100205’,’Bintang Luhurjaya’,’Surabaya’,’S1SI’)”,oSQLConn)
cmd.Connection.Open()
cmd.ExecuteNonQuery()
cmd.Connection.Close()
4. ExecuteXMLReader
Menghasilkan versi XML dari DataReader. Hanya terdapat di SQL SERVER 2000, tidak tersedia pada .NET Data Provider yang lain, serta tidak dapat bekerja pada database SQL SERVER 7.0. Contoh penggunaan ExecuteXMLReader..
Dim cmd As New SqlCommand
Dim strWrt As New StreamWriter (“Test.xml”)
cmd.Connection = oSQLConn
cmd.Connection = “select * from Mahasiswa FOR XML AUTO”
cmd.Connection.Open()
Dim xmlr As XmlReader = cmd.ExecuteScalar()
Xmlr.Read()
Do While smlr.ReadState <> Xml.ReadState.EndOfFile
strWrt.WriteLine(smlr.ReadOuterXml())
Xmlr.Close()
strWrt.Close()
cmd.Connection.Close()
Karena sifat DataReader yang read-only dan forward-only sehingga data yang ada pada obyek DataReader tidak dapat dimanipulasi, dan sekali anda membaca data tersebut maka tidak dapat kembali lagi membaca data sebelumnya. Dalam membuat obyek DataReader diharuskan memanggil metode ExecuteReader dari obyek ADO.NET yang lain,yaitu obyek command.
Dim rdr As SqlDataReader = cmd.ExecuteReader()
If rdr.HasRows = True then
Dim status As Boolean = True
Do Until Not Status
While (rdr.Read())
MessageBox.Show(rdr.Item(0))
End While
Status = rdr.NextResult()
Rdr.Close()
oSQLConn.Close()
End If