Jumat, 23 Mei 2014

ExecuteNonQuery, ExecuteReader, dan ExecuteScalar

Kali ini saya akan berbagi sedikit informasi tentang ExecuteNonQuery, ExecuteReader, dan ExecuteScalar semoga bermanfaat.

1. ExecuteNonQuery
      Adalah perintah untuk mengeksekusi script SQL :DDL(Data Definition Language) dan/atau CRUD (Create Update Delete). Jadi perintah SELECT tidak dapat dilakukan oleh ExecuteNonQuery.
Contoh:
Dim cnn As New SqlClient.SqlCommand
cnn.CommandText="INSERT INTO TCALAS VALUES('131151975','Wili Yudha','Asisten','Lab 06');"
cnn.ExecuteNonQuery()

Output dari ExecuteNonQuery berbentuk Integer, yaitu berapa banyak row/data yang sudah diexecute.
Contoh:
Dim hapus_data As Integer=cnn.ExecuteNonQuery()
MsgBox("Data berhasil dihapus: "+hapus_data.ToString)


2. ExecuteReader
Adalah kebalikan dari ExecuteNonQuer, yaitu hanya perintah SELECT saja yang dapat dilakukan. Output dari ExecuteReader adalah DataReader, jadi hasil perintah SELECT itu datanya akan disimpan ke variable DataReader yang sebelumnya kita deklarasikan.
Contoh:
Dim cnn As New SqlClient.SqlCommand
cnn.CommandText= "SELECT  * FROM TCALAS"
Dim myReader As sqlClient.SqldataReader = cnn.ExecuteReader

3.ExecuteScalar
Dapat dikatan seperti ExecuteReader hanya bedanya perintah SELECT saja yang dapat dilakukan. Ttapi outputnya adalah object, dimana ExecuteScalar hanya akan menghasilkan data pada kolom pertama dan baris pertama (First column & row).
 Contoh saya memiliki table yang berisi:
NIM                NAMA              JABATAN     LAB 
1311501975   Wili Yudha           Asisten          06
1312501792   Amir Hibatullah   Admin           10
1313502004   Deni Riswandi     SPV              -

codingan saya:
Dim cnn As New sqlClient.sqlCommand
cnn,CommandText="SELECT NIM, NAMA, JABATAN, LAB FROM TCALAS"
Dim hasil As String = cnn.ExecuteScalar

maka hasilna akan mlcul adalah = 1311501975, karena yang akn muncul hanya baris pertama kolom pertama.

0 komentar:

Posting Komentar