i was trying to update (MySQL db) the changes in the bound datagridview to database.
but i am getting exception
Concurrency violation: the UpdateCommand affected 0 of the expected 1 records.
note:-
(a) My SQL statements are not broken tested with in the MySQL ide & working fine
(b) Not on multi user environment , it's just in my laptop development
reference of jmcillhinney code (database update ) :- http://www.vbforums.com/showthread.p...ight=datatable
reference of detail for the Concurrency exception :-
(1) http://www.vbforums.com/showthread.p...cted-1-records
(2) http://www.vbdotnetforums.com/sql-se...1-records.html
My codes is like this
initialize dataadapter
Binding the datagridview with datatable
Apply changes to database
how to over come this please
but i am getting exception
Quote:
Concurrency violation: the UpdateCommand affected 0 of the expected 1 records.
(a) My SQL statements are not broken tested with in the MySQL ide & working fine
(b) Not on multi user environment , it's just in my laptop development
reference of jmcillhinney code (database update ) :- http://www.vbforums.com/showthread.p...ight=datatable
reference of detail for the Concurrency exception :-
(1) http://www.vbforums.com/showthread.p...cted-1-records
(2) http://www.vbdotnetforums.com/sql-se...1-records.html
My codes is like this
vb.net Code:
Dim Cs As String = ConnectionActivator.ConnectionStringBuilder Private _GridTable As New DataTable Private _GridAdapter As New MySqlDataAdapter
vb.net Code:
Private Sub InitialiZeDataAdapter(ByVal CnnCommand As MySqlConnection) Dim SQL_Insert = <SQL>INSERT INTO crewregistry ( crewregistry.CrewName, crewregistry.Designation, crewregistry.CrewBaseId_Fk, crewregistry.CugNumber, crewregistry.PerNumber, crewregistry.CRISid, crewregistry.NliId_Fk, crewregistry.Inactive ) VALUES ( @CrewName, @Designation, @CrewBaseId_Fk, @CugNumber, @PerNumber, @CRISid, @NliId_Fk, @Inactive ) ;</SQL> Dim SQL_Update = <SQL>UPDATE crewregistry SET crewregistry.CrewName = @CrewName, crewregistry.Designation = @Designation, crewregistry.CrewBaseId_Fk = @CrewBaseId_Fk, crewregistry.CugNumber = @CugNumber, crewregistry.PerNumber = @PerNumber, crewregistry.CRISid = @CRISid, crewregistry.NliId_Fk = @NliId_Fk, crewregistry.Inactive = @Inactive WHERE crewregistry.CrewId = @CrewId ; </SQL> Dim SQL_Delete = <SQL>DELETE FROM crewregistry WHERE crewregistry.CrewId = @CrewId ; </SQL> Dim Insert_Command As New MySqlCommand(SQL_Insert.Value.ToString, CnnCommand) Dim Update_Command As New MySqlCommand(SQL_Update.Value.ToString, CnnCommand) Dim Delete_Command As New MySqlCommand(SQL_Delete.Value.ToString, CnnCommand) With Insert_Command .Parameters.AddWithValue("@CrewName", "CrewName") .Parameters.AddWithValue("@Designation", "Designation") .Parameters.AddWithValue("@CrewBaseId_Fk", "CrewBaseId_Fk") .Parameters.AddWithValue("@CugNumber", "CugNumber") .Parameters.AddWithValue("@PerNumber", "PerNumber") .Parameters.AddWithValue("@CRISid", "CRISid") .Parameters.AddWithValue("@NliId_Fk", "NliId_Fk") .Parameters.AddWithValue("@Inactive", "Inactive") End With With Update_Command .Parameters.AddWithValue("@CrewName", "CrewName") .Parameters.AddWithValue("@Designation", "Designation") .Parameters.AddWithValue("@CrewBaseId_Fk", "CrewBaseId_Fk") .Parameters.AddWithValue("@CugNumber", "CugNumber") .Parameters.AddWithValue("@PerNumber", "PerNumber") .Parameters.AddWithValue("@CRISid", "CRISid") .Parameters.AddWithValue("@NliId_Fk", "NliId_Fk") .Parameters.AddWithValue("@Inactive", "Inactive") .Parameters.AddWithValue("@CrewId", "CrewId") End With With Delete_Command .Parameters.AddWithValue("@CrewId", "CrewId") End With With _GridAdapter .InsertCommand = Insert_Command .UpdateCommand = Update_Command .DeleteCommand = Delete_Command .MissingSchemaAction = MissingSchemaAction.AddWithKey End With End Sub
vb.net Code:
Private Sub Bind_FullGrid() Dim SQL_bind = <sql>SELECT crewregistry.CrewName, crewregistry.Designation, crewregistry.CrewBaseId_Fk , crewregistry.CugNumber, crewregistry.PerNumber, crewregistry.CRISid, crewregistry.NliId_Fk , crewregistry.Inactive, crewregistry.CrewId FROM crewregistry ; </sql> Dim S As String = SQL_bind.Value.ToString Dim Cnn896 As New MySqlConnection Dim Cmd896 As New MySqlCommand(S, Cnn896) ' Dim Da896 As New MySqlDataAdapter(Cmd896) Dim Ds896 As New DataSet Dim Cnm As New ConnectionManager Cnm.InitializeConnectionProperty(Cs) With Me._GridAdapter .SelectCommand = Cmd896 Cnm.Connect(Cnn896) .Fill(Ds896, "ContainerX") Me._GridTable = Ds896.Tables("ContainerX") Cnm.DisConnect(Cnn896) End With With Me.S_fullGridBiner .DataSource = _GridTable End With With Me.Dgv_CrewDetail .DataSource = S_fullGridBiner End With ' Cmd896.Dispose() ' Ds896.Dispose() Cnn896.Dispose() End Sub
vb.net Code:
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click Dim CnnApplyChanges As New MySqlConnection Call InitialiZeDataAdapter(CnnApplyChanges) Dim Dlm As New AddInsManager.ConnectionManager Dlm.Connect(CnnApplyChanges) _GridAdapter.Update(_GridTable) '' Error on this line Dlm.DisConnect(CnnApplyChanges) End Sub