>I have heard that it is not wise to pack a table on a production system, especially when you're dealing with a fairly large table. ( 100,000+ ). Instead you do something like:
>
>PARAMETERS tcDbc, tcTableName
>USE (tcTableName)
>COPY TO TEMP DATABASE (tcDbc) FOR NOT DELETED()
>RENAME TEMP.DBF TO &tcTableName..DBF
>REINDEX
>* Or recreate the indexes one by one from a data dictionary
>
>1. Is the correct syntax.
>
>2. If its correct, is there a problem in VFP 5, where the copy to only copies the first 10 characters of field names.
>
There are a large number of issues with this method of packing tables that are a part of a database container and rebuilkding indexes using this method. Do yourself a tremendous favor, and purchase a copy of SDT (Stonefield Database Toolkit) from Stonefield; they're UT Partners, and offer a discount to PUTM purchasers. SDT provides mechanisms that can pack/reindex/reconstruct/update/fix tables both in a DBC and free-tables; it provides significant extensions to the DBC capabilities through a public metadata extension system called DBCX. The singnifcantly enhanced PACK, REINDEX and additional capabilities can be incorporated into your application and distributed on a roylty-free basis with your applications. It's paid for itself many times over for me.