it isn't that it doesn't save, exactly
every control carries an "oldvalue" as well as its current value, until the record is saved.
so pressing escape undoes your edits. it first cancels an edt within a control being edited, and puts it back to it's oldvalue. If no control is being edited it undoes all edits to a record, and reverts every control back to its original value.
so you can still force a record save eg records/save - but the point is that the record has not being changed.
one way of seeing this, is to add record selectors to a form. it shows as a bar on the left, with an arrow against the active record (each record in a continuous form)
if the record has changed the arrow changes to a pencil.
there are now numerous ways of saving the record. write code to save record. move to another record. close the form. menu item, records, save. even click the pencil.
there are numerous ways of cancelling the save. press esc to cancel the edits. run code to undo the changes.
because there are so many ways to save a record, it is far better to teach your users how access works, rather than add a superfluous button to do it. If oyu do, they might not click the save button, and be surprised that the record still changed!