Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Appending
Message
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Miscellaneous
Thread ID:
00097004
Message ID:
00097044
Views:
25
BRILLIANT!!!

Thanks

As for the what to do if I don't have the room to order the table, I guess I'll
just have to scan - scatter memv insert into newtable - endscan

Sandy

>>Hello All;
>>I'm having a problem with my table sizes. I'm dealing with tables that are up to or more than 1 gig. At one point I need to decide if I can order to the table i.e "SELECT * for mytable order by my keyfield into table new table"
>>
>>Since the table is a cursor, I cannot use FSIZE() to determine it's size, so I have a FOR loop that determines that size of 1 record and then I multipy it by reccount() * 3. This value I compare with DISKSPACE(SYS(5)). If DISKSPACE is greater, then I run my SQL.
>>
>>The problem occurs if the cursor size is too big. I need this data to sit in a table with a different name. If I close the cursor, the data is gone!! I can't SQL it into a new table.
>>
>>Any ides are welcome!!
>>
>>Sandy
>Just an addendum to my other post. You can pre-calculate the number of records that will be returned using either COUNT()...FOR... or by using an SQL statement to determine how many records will meet the necessary conditions.
>
>Also, look at SYS(2022) which will return the cluster size for the drive in question. You should use somthine like:
>* Note, pass the drive letter to SYS(2022)
>* if it isn't the default
>lncluster = VAL(SYS(2022))
>lnsize = CEILING(lnsize / lncluster) * lncluster
>to determine the actual amount of diskspace to be used.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform