?
Solved

Saving record in VB2010

Posted on 2011-03-18
5
Medium Priority
?
894 Views
Last Modified: 2012-08-13
Hello,

I have a backend database as my bindingsource, and am attempting to use a Save command button to reflect the changes on my form into my database.  Please advise.

Thank you.

Option Explicit On

Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.SqlClient
Imports System.Windows.Forms.DataGridView

Public Class frmInput
    Dim sqlString As String = "SELECT * FROM tblInsuranceClaim"
    Dim ConnString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Documents and Settings\Administrator\Desktop\MyDBBackend.mdb;User ID=admin"
    Dim OleDBConn1 As System.Data.OleDb.OleDbConnection = New System.Data.OleDb.OleDbConnection(ConnString)
    Dim OleDbDataAdapter1 As System.Data.OleDb.OleDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter(sqlString, OleDBConn1)
    Dim dbGen As New OleDbCommandBuilder(OleDbDataAdapter1)

    Private Sub frmOrder_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: This line of code loads data into the 'MyDBBackendDataSet3.tblInsuranceClaim' table. You can move, or remove it, as needed.
        Me.TblInsuranceClaimTableAdapter.Fill(Me.MyDBBackendDataSet.tblInsuranceClaim)
        txtPDrug.Text = frmDrugs.txtDrugHidden.Text

        Try
            OleDbDataAdapter1.AcceptChangesDuringUpdate = True
        Catch ex As Exception
            MsgBox("An exception was thrown because the back-end database is currently not allowing updates. Please try again.")
        End Try

        Try
            OleDBConn1.Open()
        Catch ex As Exception
            MsgBox("An exception was thrown because a connection to the database or database tables cannot be established")
        End Try

        TblInsuranceClaimBindingSource.AddNew()
    End Sub

    Private Sub cmdSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSave.Click
        Try
            Me.Validate()
            Me.TblInsuranceClaimBindingSource.EndEdit()
            OleDbDataAdapter1.Update(Me.MyDBBackendDataSet.tblInsuranceClaim)
            MyDBBackendDataSet.Tables("tblInsuranceClaim").AcceptChanges()
            OleDbDataAdapter1.Update(MyDBBackendDataSet, "tblInsuranceClaim")
            OleDBConn1.Close()
            MsgBox("Update Successful")
        Catch ex As Exception
            MsgBox("Update Failed")
        End Try
    End Sub

Open in new window

0
Comment
Question by:--TripWire--
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 7

Assisted Solution

by:Alex_W
Alex_W earned 600 total points
ID: 35167171
Consider My.Settings to save settings between runtime sessions.  You'll find it in the project properties under the Settings page.

To save you just need something like:

My.Settings.CommandButton = txtCommand.Text

To load you you use the forms load event with:

txtCommand.Text = My.Settings.CommandButton.
0
 

Author Comment

by:--TripWire--
ID: 35167248
Thanks for the reply - but I think you misunderstood my question.
My form has a number of different controls on it, mostly textboxes.  And I want the information that the user types in to be saved into the database when the user clicks the Save command button on the form.
0
 
LVL 7

Accepted Solution

by:
Alex_W earned 600 total points
ID: 35167527
Ah my mistake, to update changes in your binding source controls you'll want to use the data adapters update method.  I see your using an Access DB, here is some specifics:

http://msdn.microsoft.com/en-us/library/ms233819(v=VS.80).aspx
0
 

Author Comment

by:--TripWire--
ID: 35167700
hmm...Well, I already have the adapter.update method in my code above
0
 

Author Closing Comment

by:--TripWire--
ID: 37595419
It was helpful, but I wasn't able to find a full solution this way.  But thank you.
0

Featured Post

New benefit for Premium Members - Upgrade now!

Ready to get started with anonymous questions today? It's easy! Learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: jpaulino
XML Literals are a great way to handle XML files and the community doesn’t use it as much as it should.  An XML Literal is like a String (http://msdn.microsoft.com/en-us/library/system.string.aspx) Literal, only instead of starting and ending with w…
I think the Typed DataTable and Typed DataSet are very good options when working with data, but I don't like auto-generated code. First, I create an Abstract Class for my DataTables Common Code.  This class Inherits from DataTable. Also, it can …
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question