My assignment said in my data section of database file have 1 byte "deleted" flag. 0 implies valid record. 1 implies deleted record. Whether this means the record isn't deleted , in fact , when the user delete it , only set it's "deleted" flag 1, but this record exist yet!
Yes, the record in reality still exists in the db.db file, however the space should be reclaimed by any new record. And no you do not need to implement a GUI to add records, just the method in the Data class. So marking it deleted is all it has to do. It is similar to some databases, like for example in Foxpro you can mark records for deletion and they remain in the database. When you get the database exclusive and send a "Pack" command, then it actually deletes the data from the file. Mark
The GUI does not need to be able to add or delete records. However the Data class is required to have methods that could add or delete records - the GUI just never calls them.