Information générale
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
>Hi there,
>
>We use a cleanup routine to cope with deleted records, corrupted indices etc. This routine is accessible to administrators only.
>At the end of the routine, we try to pack the database.
>This returns in the error " database must be opened exclusively"
>However, we DID open it exclusively (or, at least, we tried!)
>
>Our code:
>
>Select 0 && first, close all tables exept one, which is a free table
>lnAantWorkAreas = Select()
>FOR i = 1 TO lnAantWorkAreas
> Select(i)
> IF Upper(Alltrim(Alias())) <> 'SYSTEEM'
> USE
> ENDIF
>ENDFOR
>Set Database to Data_Ov && the database to be packed
>Close Databases && close open databases
>Open Database A_dbsOvPath + '\Data_OV' Exclusive && open database exclusive
>Set Database to Data_Ov
>Pack Database && this returns the error
>
>
>Where do we go wrong?
>
>Thanks in advance,
>
>Geert van Snik
>Zorgned Automatisering
>Wageningen, the Netherlands.
Is the project manager active while you are running this code.
If so, first close it.
Another thing about your code.
The Close databases command closes all the tables in it, so you don't need to close the tables first
if you open a database it is automaticly set as the active one.
Précédent
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement