void deleteTableRecord(long tableNum) throws IOException {

		// Locate tableRecord to be deleted
		for (int i = 0; i < tableRecords.length; i++) {
			if (tableRecords[i].getTableNum() == tableNum) {
				if (tableRecords[i].getRootBufferId() >= 0)
					throw new IOException("Can not delete non-empty table");
				table.deleteRecord(tableNum);
				tableRecords[i].invalidate();

				// Update master root which may have changed
				dbParms.set(DBParms.MASTER_TABLE_ROOT_BUFFER_ID_PARM,
					masterRecord.getRootBufferId());

				// Update tableRecord list
				TableRecord[] newList = new TableRecord[tableRecords.length - 1];
				System.arraycopy(tableRecords, 0, newList, 0, i);
				System.arraycopy(tableRecords, i + 1, newList, i, tableRecords.length - i - 1);
				tableRecords = newList;
				return;
			}
		}
		throw new IOException("Table not found");
	}
Remove the master table record associated with the specified table name.
This method may only be invoked while a database transaction 
is in progress. 
@param tableNum table number (key within master table)
@throws IOException database IO error
Ghidra/Framework/DB/src/main/java/db/MasterTable.java