code-alfred
Nieuwe gebruiker
- Lid geworden
- 9 apr 2006
- Berichten
- 1
Hallo allemaal,
Ik ben al een tijdje aan het stoeien met het her-nummeren van een Primary key tabel.
Soms worden de records verwijderd en er onstaat een nummering wat niet oplopend is.
In mijn geval heet dit veld DrvKey van tabel DRV. Het is gemaakt in Paradox 5.x.
Het probleem is;
Wanneer alles perfect genummerd is, zoals:
1 test resultaat
2 test NoItem
3 ok Rel
etc..
Dan kan ik wel her-nummering uitvoeren.
Maar, wanneer record id 3 of 10 of een paar tegelijk worden verwijderd, dan is het her-nummeren opeens niet meer mogelijk, en gaat met Run-time fouten met de melding dat een andere gebruiker ook bezig is om de database bij te werken. Ik ben in dit geval de enige. Ik snap hier even niets meer van.
De subroutine die ik gebruik is (vb6);
Private Sub Herindex_Click()
Dim CountLf As Integer
Dim i As Integer
Data1.Recordset.MoveLast
CountLf = Data1.Recordset.RecordCount - 1
Data1.Recordset.MoveFirst
For i = 1 To CountLf + 1
Data1.Recordset.Edit
Data1.Recordset![DrvKey] = i + 8000
Data1.Recordset.Update
Data1.Recordset.MoveNext
Next i
End Sub
De paradox (5.x) database is gevuld met +/- 800 items.
Er zijn in totaal 80 records verwijderd bv 1 tot 30 en wat tussen door.
Bij record 213 krijg ik dan de melding dat er gelijktijdig een record update uitgevoerd word (Error 3197) een gelijktijdige bewerking dus.
DrvKey is waarop de index staat, wanneer ik het 2e veld gebruik, dan is er niks aan de hand, dus veld 2 (IdnKey) zal worden geupdated met 1 tot en met 800.
Spontaan verdwijnen er dan ook records wanneer ik On error resume next gebruikt.
Misschien dat iemand mij opweg kan helpen waarom de Primary key field niet opnieuw genummerd mag worden.
Alvast bedankt.
Gr. Alfred
Ik ben al een tijdje aan het stoeien met het her-nummeren van een Primary key tabel.
Soms worden de records verwijderd en er onstaat een nummering wat niet oplopend is.
In mijn geval heet dit veld DrvKey van tabel DRV. Het is gemaakt in Paradox 5.x.
Het probleem is;
Wanneer alles perfect genummerd is, zoals:
1 test resultaat
2 test NoItem
3 ok Rel
etc..
Dan kan ik wel her-nummering uitvoeren.
Maar, wanneer record id 3 of 10 of een paar tegelijk worden verwijderd, dan is het her-nummeren opeens niet meer mogelijk, en gaat met Run-time fouten met de melding dat een andere gebruiker ook bezig is om de database bij te werken. Ik ben in dit geval de enige. Ik snap hier even niets meer van.
De subroutine die ik gebruik is (vb6);
Private Sub Herindex_Click()
Dim CountLf As Integer
Dim i As Integer
Data1.Recordset.MoveLast
CountLf = Data1.Recordset.RecordCount - 1
Data1.Recordset.MoveFirst
For i = 1 To CountLf + 1
Data1.Recordset.Edit
Data1.Recordset![DrvKey] = i + 8000
Data1.Recordset.Update
Data1.Recordset.MoveNext
Next i
End Sub
De paradox (5.x) database is gevuld met +/- 800 items.
Er zijn in totaal 80 records verwijderd bv 1 tot 30 en wat tussen door.
Bij record 213 krijg ik dan de melding dat er gelijktijdig een record update uitgevoerd word (Error 3197) een gelijktijdige bewerking dus.
DrvKey is waarop de index staat, wanneer ik het 2e veld gebruik, dan is er niks aan de hand, dus veld 2 (IdnKey) zal worden geupdated met 1 tot en met 800.
Spontaan verdwijnen er dan ook records wanneer ik On error resume next gebruikt.
Misschien dat iemand mij opweg kan helpen waarom de Primary key field niet opnieuw genummerd mag worden.
Alvast bedankt.
Gr. Alfred