When multi-user access to the file is allowed, a record must be locked with RLock() before the function DbDelete() is called.
Function DbDelete() Foundation
Marks record as deleted.
DbDelete() --> NIL
The return value of DbDelete() is always NIL.
The database function DbDelete() marks the current record in a work area as "deleted". When the function is used without the alias operator, the current record in the current work area is marked as "deleted". DbDelete() logically deletes records but does not physically remove them from the database file. The deletion flag is displayed as an asterisk (*) in the output of commands like LIST and DISPLAY.
The visibility of records marked as "deleted" is set using the command SET DELETED ON | OFF. If SET DELETED is set to ON and the current record is marked as deleted, it remains visible until the record pointer is moved. records marked as deleted are "undeleted" with the function DbRecall(). The command PACK actually removes all data records marked as "deleted" from a file. The command ZAP is used to delete and physically remove all records from a file.
The command DELETE can be used instead of DbDelete(). DELETE is effective only in the current work area.
If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.