Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Replace all can't lock header
Message
De
02/12/1997 18:42:23
 
 
À
02/12/1997 09:17:02
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00063169
Message ID:
00063440
Vues:
55
>>SET LOCK ?
>>
>>Vlad
>>
>>>I have several utilities in my app that use the REPLACE ALL command, as well as the DELETE all command. I am aware that both of these statements lock the table header during their execution, so that that no other changes can be made before they finish. This is a limitation I have been able to live with thus far. I just returned from vacation, and now all of these utilities don't work with other people in the tables. This has never been a problem before, and I can't figure out what could have changed. All of the sudden, any time I try to issue a REPLACE ALL, from the command window (on my machine or any other machine) or one is issued in code from the app, I either get an error message ("File is in use by another") or a wait window ("Attempting to lock...") depending on the REPROCESS setting in the current datasession. What have I changed to cause this?
>
>Well, that was my first guess too, but on checking in help, I found that SET LOCK doesn't apply to REPLACE ALL and DELETE ALL. From what I understand these statements lock the table all of the time, no matter what. What I don't understand is why they can't do it now, and they could before. This is causing MAJOR problems for us; any insight that anyone could give would be greatly appreciated. Thanks.

But it applies to other commands that might lock the dbf, so your REPLACE/DELETE ALL will not be able to lock the dbf. SET LOCK is scoped to the data session.

Also: Do you use RLOCK()/LOCK()/FLOCK()? If yes, look for such locks that are not removed.

Vlad
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform