Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Recreating DBC nightmare
Message
De
17/04/1998 18:13:30
 
 
À
17/04/1998 15:23:28
Raul Davila
Davila Programming Services
Toa Alta, Porto Rico
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00093014
Message ID:
00093071
Vues:
30
>Hi:
>
> I've always been used to work with free tables since FPDOS 2.0
> Until now I've always used a small routine to check if any of
> the tables were "accidentally" erased and prompt the user
> if the table should be recreated.
>
> Databases are making this process a nightmare!
>
> 1. If a table is erased you can't do a REMOVE TABLE, VFP will complain
>that the table is not on the disk and cannot remove it from the DBC.
> 2. If I create the table while the DBC is open VFP complains that there is already a table with that name in the DBC.
>Actually the table is added but it is not opened, when I USE it and recreate the index an error remains in the DBC
>
> After 3 mugs of coffee and a pack of Marlboros I found this:
> Given MYDATA.DBC contains TABLE1.DBF which is index on field F1
>
> ** Emulate the "table accidentally erased by user dilemma"
> ERASE TABLE1.DBF
> ERASE TABLE1.CDX
>
> OPEN DATA MYDATA
> CREATE TABLE TABLE1 (F1 C(5))
> ** error 1571 is triggered, I trap it and don't let the user know what happened.
> ** Although the error is triggered the table is created and added to the DBC.
> ** Usually CREATE TABLE leaves the table opened but in this case it doesn't.
> USE TABLE1 && CREATE TABLE did not leave it open
> INDEX ON F1
> ** error 1561 is triggered. "Database is invalid. Please validate."
> ** VALIDATE DATA will not fix the problem unless RECOVER is used.
> ** Needless to say RECOVER cannot be used within a program!!!
>
> The table and the index seem to be usable but the error inside the DBC will remain.
>
> IMHO the perfect solution would be to do a VALIDATE DATA RECOVER programmatically, another one for the Tahoe wishlist.
> Sorry for the long post, but I guess it's better 1 long post with a lot of info that a long thread with all the info scattered. :)
>
>Any ideas are welcome and greatly appreciated.
>
>TIA

Take a look Stonefield database tools, for VFP this should help with the problem..
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform