Hallo, ich habe ein problem mit meinem Autowert meiner access datenbank und einer multiuser anwendung.
in form:
ich versuche während des einfügens den aktuellen wert wieder zurück zu erhalten.
allerdings funktioniert das nicht richtig. ich bekomme immer nur eine 0 zurück anstatt den wert, den ich bräuchte.
ich trage die werte in eine datagridview ein, das ich über ein bindingsource an mein dataset verbunden habe.
in diesem dataset leigt dann meine tabelle.
allerding sfunktioniert das update des keys einfach nicht.
in form:
Code:
me.mds.Tables("Tab").Columns("Col1").AutoIncrement = True me.mds.Tables("Tab").Columns("Col1").AutoIncrementStep = -1 me.mds.Tables("Tab").Columns("Col1").AutoIncrementSeed = 0
Code:
Private Sub RowUpdated(ByVal sender As Object, _ ByVal e As Data.OleDb.OleDbRowUpdatedEventArgs) Handles da.RowUpdated Dim tmp_tabc_pos As Integer Dim newID As Integer = 0 Dim idCMD As Data.OleDb.OleDbCommand = New Data.OleDb.OleDbCommand("SELECT @@IDENTITY", m_AccessDB.cn) If e.StatementType = StatementType.Insert Then ' Retrieve the identity value and store it in the CategoryID column. newID = CInt(idCMD.ExecuteScalar()) ' row - table columns For Each col As DataColumn In e.Row.Table.Columns If col.AutoIncrement = True Then e.Row(col.ColumnName) = newID Exit Sub End If Next End If End Sub
allerdings funktioniert das nicht richtig. ich bekomme immer nur eine 0 zurück anstatt den wert, den ich bräuchte.
ich trage die werte in eine datagridview ein, das ich über ein bindingsource an mein dataset verbunden habe.
in diesem dataset leigt dann meine tabelle.
allerding sfunktioniert das update des keys einfach nicht.
Comment