I was editing a table (imported from a CSV file) by right-clicking on the column and choosing "Delete field", when I decided that I wanted the column/field back.

The Undo option from the menubar was disabled so that option was closed and although I had not explicitly saved the changes (via the Save button on the toolbar) when I closed and re-opened the project the table had been saved.

It seemed that the change to the table had been saved automatically and there was no way of recovering the field (other than re-importing). Am I correct in thinking that?

Yes, at this point undo/redo is only implemented in a few places, like the report writer. It is on our list of features to implement in the future, but this can get a little tricky with big database operations. Most database operations save automatically without needing to explicitly press "save."

If you select "Delete Field" it does, in fact, delete it from the database. This obviously helps to speed up processing if you have a field you don't need.

However, to just remove it from the view and keep it for later, you can select "Hide Column(s)" and then later "Insert Column(s)" to bring them back into view. Another thing you can do is actually show the same column multiple times, if that helps you with your analysis.