webForumDet fria alternativet

VB-problem med databas i lokalt nät

.NET

1 svar · 254 visningar · startad av patron

Medlem sedan sep. 200125 inlägg
Frågan#1

Det här är nog svårt!
Visual Basic 4 program i exvis två datorer i ett enkelt tcpIP-nätverk abetar mot samma databas(typ Access). Använder DAO och typiskt EDIT - UPDATE.
Det inträffar ibland (inte ofta) att databasaccessera låser systemet. Fel av typen "Locked by user Admin on machine..."
För att komma vidare måste VB-programmet startas om helt!!
Hur kan jag åstadkomma felet själv för att hitta orsaken?
Kan felet fångas upp med felhanterare? Skrivning till DB sker på många ställen.
Kan låsningen unvikas? Jag har försökt "isolera" alla skrivningar till DB med BeginTrans - CommitTrans.

Har någon ett bra tips??

Medlem sedan maj 20018 027 inlägg
#2

Man brukar ta hand om fel genom att inleda ett block med:

On Error Goto ErrorHandler

I slutet av suben, har man då ett block i stil med:

[b]Exit Sub
ErrorHandler:
Select Case Err.Number
  Case [/b]Felkoden för just detta fel[b]:
dosomethingaboutthiserror()
End Select[/b]

I denna felhantering skulle du tex kunna göra en rollback på en transaktion, om det nu var databasskrivningen som var fel.

246 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
116 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)