Do not flush data

Command groupFlag affectedReversibleExecute on clientPlatform(s)
Changing dataYESYESNOAll

Syntax

Do not flush data

Description

This command causes all data file operations to be carried out without writing the changed data to disk at each Update files or Delete. The command is designed to speed up data file operations when the user is prepared to take the extra risk of data loss.

The command operates best when there is a single user logged into the data file. It is unlikely to cause speed increase if the data is on a network volume (that is, shared by several users).

If you use Test for only one user at the beginning of the method, further users are prevented from opening the data file until the method terminates.

The command sets the flag if the state of the 'Do not flush data' mode is changed. When placed in a reversible block, the command restores the previous state of the 'Do not flush' flag upon the termination of the method.

Example

# fast import

Test for only one user
If flag true
  
Do not flush data

  
Drop indexes
 

End If
 
Prompt for import file
Prepare for import from file
 
Delimited(tabs)

Import data
 
lImportList

End import
Close import file
 
For each line in list
 
from
 
1
 
to
 
lImportList
.
$linecount
 
step
 
1

  
Prepare for insert
 
## transfer list to file

  
Load from list
 

  
Update files
End For
Flush data now
 
## writes the data immediately to disk

 
Build indexes
 
 
## rebuild indexes

Flush data
 
## Changes mode back to 'Flush data'

Repeat