Here is the only solution I found that works in Firefox:
*Note you could basically just copy all of the commands in bold (the rest just shows the output)
Install sqlite3
sqlite3 places.sqlite
sqlite> .clone places.sqlite-fixed
moz_places... done
moz_historyvisits... done
moz_inputhistory... done
moz_bookmarks... done
moz_keywords... done
sqlite_sequence... Error: object name reserved for internal use: sqlite_sequence
SQL: [CREATE TABLE sqlite_sequence(name,seq)]
done
moz_anno_attributes... done
moz_annos... done
moz_items_annos... done
sqlite_stat1... Error: object name reserved for internal use: sqlite_stat1
SQL: [CREATE TABLE sqlite_stat1(tbl,idx,stat)]
Error 1: no such table: sqlite_stat1 on [SELECT * FROM "sqlite_stat1"]
done
moz_hosts... done
moz_bookmarks_deleted... done
sqlite_autoindex_moz_inputhistory_1... done
sqlite_autoindex_moz_keywords_1... done
sqlite_autoindex_moz_anno_attributes_1... done
sqlite_autoindex_moz_hosts_1... done
sqlite_autoindex_moz_bookmarks_deleted_1... done
moz_places_hostindex... done
moz_places_visitcount... done
moz_places_frecencyindex... done
moz_places_lastvisitdateindex... done
moz_historyvisits_placedateindex... done
moz_historyvisits_fromindex... done
moz_historyvisits_dateindex... done
moz_bookmarks_itemindex... done
moz_bookmarks_parentindex... done
moz_bookmarks_itemlastmodifiedindex... done
moz_places_url_hashindex... done
moz_places_guid_uniqueindex... done
moz_bookmarks_guid_uniqueindex... done
moz_annos_placeattributeindex... done
moz_items_annos_itemattributeindex... done
moz_keywords_placepostdata_uniqueindex... done
moz_bookmarks_dateaddedindex... done
PRAGMA user_version;
sqlite> PRAGMA user_version;
41
sqlite> .exit
*Note the output "41" or whatever number you will need to use this later *below*
#Note again in the command "PRAGMA user_version = 41" (substitute 41 with whatever version you got above).
sqlite3 places.sqlite-fixed
PRAGMA integrity_check;
PRAGMA user_version = 41;
PRAGMA journal_mode = truncate;
PRAGMA page_size = 32768;
VACUUM;
PRAGMA journal_mode = wal;
SQLite version 3.11.0 2016-02-15 17:29:24
Enter ".help" for usage hints.
sqlite> PRAGMA integrity_check;
ok
sqlite> PRAGMA user_version = 41;
sqlite> PRAGMA journal_mode = truncate;
truncate
sqlite> PRAGMA page_size = 32768;
sqlite> VACUUM;
sqlite> PRAGMA journal_mode = wal;
wal
sqlite> .exit
Now restore the "places.sqlite-fixed" to places.sqlite and reopen Firefox
After doing this my address bar history worked fine and perfectly! No need to start with a fresh database and lose valuable history and shortcuts to key sites you visit!
There is still hope but basically when you do a major upgrade such as Firefox 80 to 88, your profile is basically guaranteed to be broken.
What you need to do is create a new profile and the copy the contents of your old profile over to the new profile and then it should work.
mozilla, firefox, sqlite, corruption, database, repairhere, commands, bold, output, install, clone, moz_places, moz_historyvisits, moz_inputhistory, moz_bookmarks, moz_keywords, sqlite_sequence, reserved, sql, seq, moz_anno_attributes, moz_annos, moz_items_annos, sqlite_stat, tbl, idx, stat, select, quot, moz_hosts, moz_bookmarks_deleted, sqlite_autoindex_moz_inputhistory_, sqlite_autoindex_moz_keywords_, sqlite_autoindex_moz_anno_attributes_, sqlite_autoindex_moz_hosts_, sqlite_autoindex_moz_bookmarks_deleted_, moz_places_hostindex, moz_places_visitcount, moz_places_frecencyindex, moz_places_lastvisitdateindex, moz_historyvisits_placedateindex, moz_historyvisits_fromindex, moz_historyvisits_dateindex, moz_bookmarks_itemindex, moz_bookmarks_parentindex, moz_bookmarks_itemlastmodifiedindex, moz_places_url_hashindex, moz_places_guid_uniqueindex, moz_bookmarks_guid_uniqueindex, moz_annos_placeattributeindex, moz_items_annos_itemattributeindex, moz_keywords_placepostdata_uniqueindex, moz_bookmarks_dateaddedindex, pragma, user_version, substitute, integrity_check, journal_mode, truncate, page_size, vacuum, wal, usage, hints, ok, restore, reopen, shortcuts, sites,