December 9, 2008

Penginputan data dari DatagridView kedalam SQL Server 2000


Kojirosan: Mas, d vb.net kalo mao simpan hasil olahan datagridview ke database SQL2000 gimana ya? kalo utk textbox saya sudah bisa

Setelah ada pertanyaan seperti diatas, maka saya kepikiran untuk membuat simple artikel sehingga saya tidak perlu menjawab pertanyaan yang berulang-ulang.
Dari pertanyaan diatas, kita asumsikan bahwa si penanya sudah bisa menampilkan data pada DataGridView, yang menjadi pertanyaannya adalah bagaimana memasukkan data pada grid kedalam table. (Bener gitu kan Mas???).
Jika seperti itu hal yang harus kita pikirkan adalah mengambil data pada grid view untuk dijadikan value pada proses penginputan. Silahkan liat sintaks dibawah untuk memasukkan data pada grid kedalam textbox.
Try
Dim row As DataGridViewRow = DgView.Rows(e.RowIndex)
txtISBN.Text = row.Cells(0).Value
txtTitle.Text = row.Cells(1).Value
txtAuthors.Text = row.Cells(2).Value
txtPublisher.Text = row.Cells(3).Value
txtPrice.Text = row.Cells(4).Value
Catch ex As Exception
MsgBox(ex.Message)
Finally
MyConnection.close()
End Try
Note :Sintaks diatas berfungsi pada Vb 2005 keatas
Jika hal seperti ini sudah bisa kita lakukan maka sangat mudah sekali untuk melakukan penginputan kedalam table pada SQL server.
Setelah kita membuat Class (.vb) untuk melakukan proses penginputan (liat Step 13), maka jendela user interface hal yang perlu dilakukan adalah seperti berikut.
myConnectionLibrary.AccessTitleInsert(row.Cells(0).Value, row.Cells(1).Value, _
row.Cells(2).Value, row.Cells(3).Value, row.Cells(4).Value)

Dengan melakukan hal diatas kita maka kita telah berhasil melakukan penginputan dari DatgridView yang telah di olah.


Wassalam

18 comments:

Unknown said...

bused....
apaan nich?

Junindar, MVP said...

Mudah2an bermanfaat bagi yang ingin belajar vb.net bos....

Anonymous said...

Makasi atas tutornya, mas mau nanya lagi saya buat sebuah aplikasi yang dimana data yang akan diinputkan ke DB saya tampung dulu ke
DataGridView yang berasal dari Textbox setelah itu saya mau nyimpan hasil data yang udah saya olah pada DatagridView untuk disimpan ke DB tapi yang ingin saya tanyakan gimana cara untuk nyimpan semua data keseluruhan tiap Row yg ada pada dagagridview ke DB dan hasilnya data pada semua rows Datagridview terinput

Junindar, MVP said...

saya biasa menggunakan list view untuk menampung data sementara..saya yakin kamu sudah bisa memasukkan data dari textbox ke listview..tapi untuk artikel bagaimana memasukkan seluruh data pada listview ke dalam tabel lihat disini http://junindar.blogspot.com/2008/12/menampilkan-data-dari-table-ke-dalam.html
di asumsikan kamu sudah mengerti cara insert ke tabel..

BartIQY said...

Assalamualaikum, Mas gimana caranya sih untuk membuat user login baru di sql server managemen studio?
saya pake sql server 2005 express, saya uda coba beberapa kali untuk buat user login baru tapi melah error yang
pesan errornya kalau ga salah seperti ini
create failed for login 'Nama user yang saya masuka'. (Microsoft.sqlserver.express.smo)
the must_change option is not supported by this version of microsoft windows.(mircosoft sql server, error:15195)

Junindar, MVP said...

kalau dari error nya SQL express ga support untuk feature itu..

Anonymous said...

mas, itu code yang buat masukin ke textbox dari datagridview dimasukin di event (declarations) datagridview apa y..?

Junindar, MVP said...

event handler DataGridView1_CellClick

bali tours said...

Manatabs infonya gan....

Febriano Bramantyo said...

salam kenal, ngobrol2 tentang DGV, ane juga punya pertanyaan nih mas Junindar, gini, saya ingin buat sebuah form penjualan barang, untuk input item barang saya ingin menggunakan datagridview, saya ingin jika saya tekan enter pada cell pertama maka muncul form (data barang)lain untuk membantu pencarian, pada saat sudah ketemu lalu pada form kedua saya tekan enter, maka itu menjadi input untuk form penjualan. Gimana caranya agar setiap cell dalam datagridview memiliki methode yang berbeda? terima kasih mas

Febriano Bramantyo said...

salam kenal, ngobrol2 tentang DGV, ane juga punya pertanyaan nih mas Junindar, gini, saya ingin buat sebuah form penjualan barang, untuk input item barang saya ingin menggunakan datagridview, saya ingin jika saya tekan enter pada cell pertama maka muncul form (data barang)lain untuk membantu pencarian, pada saat sudah ketemu lalu pada form kedua saya tekan enter, maka itu menjadi input untuk form penjualan. Gimana caranya agar setiap cell dalam datagridview memiliki methode yang berbeda? terima kasih mas

A.Zainal said...

assalam.....
salam kenal pak, saya jenal.
mau nanya nih
kalau mau ngimput data dari listview ke tabel-tabel yang ber beda tuh gimana pak.
co:
di dalam data listview ada ID BARANG
DAN isi ID BARANG tersebut ada :
A01 untuk tabel barang Sendal
B01 untuk tabel barang Bola
B02 Untuk tabel barang sepatu
T01 untuk tabel barang Tas
nah kalo kaya gitu codingnya kaya gmana pak?
skian dri saya.
wassalam....

Tangguh said...

kasih contoh source kodenya donk mas junindar,,

Rizki Ahmad said...

Mas, Junindar... bisa bantu saya? saya bikin DGV untuk input ke database... cara ngambil value ngikutin yang ada di pos ini...

tadpi itu yang di Link Step 13, filenya not found mas...

ini ada masalah di codingan saya, bisa bantu benerin sekaligus jelasin mas? :)

Junindar, MVP said...

Code kamu mana?

Unknown said...

Bang tolongin ni bang ,,, ni data transaksi nya masuk ke tabel transaksi,, tapi detail transaksi ga masuk bang,, tolongin koreksi bang,,,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Call koneksi()
CMD = New SqlCommand("select * from TTransaksi where NoFaktur ='" & Txt_Faktur.Text & "'", CONN)
RD = CMD.ExecuteReader
RD.Read()
If Not RD.HasRows Then
Call koneksi()
If MessageBox.Show("Yakin Akan Di simpan..?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
Dim Tambah As String = "insert into TTransaksi values ('" & Txt_Faktur.Text & "','" & Txt_NamaKsm.Text & "','" & Txt_NoKsm.Text & "','" & Cbo_Parfum.Text & "','" & Txt_TglTerima.Text & "','" & Txt_JmTerima.Text & "','" & DTP_TglSelesai.Text & "','" & Txt_JmSelesai.Text & "','" & Lbl_JmlhQtyBrg.Text & "','" & Txt_SubTotal.Text & "','" & Txt_Discount.Text & "','" & DigitalGauge1.Text & "','" & Txt_Bayar.Text & "','" & Txt_Kembali.Text & "','" & Txt_Sisa.Text & "','" & Cbo_Status.Text & "','" & Txt_Keterangan.Text & "')"
CMD = New SqlCommand(Tambah, CONN)
CMD.ExecuteNonQuery()
Call koneksi()
Dim Detail As String = "insert into TDetailTransaksi (NoFaktur, KodeBrg, NamaBrg, Jumlah, Tarif, SubTotal, Keterngan) VALUES ('" + Txt_Faktur.Text + "', @Kode Barang, @Nama Barang, @Jumlah, @Tarif, @Total Tarif, @Ket)"
CMD = New SqlCommand(Detail, CONN)
CMD.Parameters.Add(New SqlParameter(Txt_Faktur.Text, SqlDbType.Char))
CMD.Parameters.Add(New SqlParameter("@Kode Barang", SqlDbType.Char))
CMD.Parameters.Add(New SqlParameter("@Nama Barang", SqlDbType.VarChar))
CMD.Parameters.Add(New SqlParameter("@Jumlah", SqlDbType.Int))
CMD.Parameters.Add(New SqlParameter("@Tarif", SqlDbType.Int))
CMD.Parameters.Add(New SqlParameter("@Total Tarif", SqlDbType.Int))
CMD.Parameters.Add(New SqlParameter("@Ket", SqlDbType.VarChar))
Dim transaction As SqlTransaction = CONN.BeginTransaction()
CMD.Transaction = transaction
Try
For i As Integer = 0 To DGVBrg.Rows.Count - 2
CMD.Parameters("@Kode Barang").Value = DGVBrg.Rows(i).Cells(0).FormattedValue
CMD.Parameters("@Nama Barang").Value = DGVBrg.Rows(i).Cells(1).FormattedValue
CMD.Parameters("@Jumlah").Value = DGVBrg.Rows(i).Cells(2).FormattedValue
CMD.Parameters("@Tarif").Value = DGVBrg.Rows(i).Cells(4).FormattedValue
CMD.Parameters("@Total Tarif").Value = DGVBrg.Rows(i).Cells(5).FormattedValue
CMD.Parameters("@Ket").Value = DGVBrg.Rows(i).Cells(6).FormattedValue
CMD.ExecuteNonQuery()
Next i
transaction.Commit()
MessageBox.Show("Data Berhasil Disimpan")
Catch ex As Exception
Try
transaction.Rollback()
Catch rollBackEx As Exception
MessageBox.Show(rollBackEx.Message)
End Try
End Try
End If

Anonymous said...

mau tanya caranya nampilin data listview1 yang sama aja ke listview2 gmana ya?

Unknown said...

kalau simpannya ke mysql server gmn ya?
aku pakai vb 6.0