Problem:  My ODBC Connection Fails to a Newly Loaded Database.  I might still be able to access the database via psql.

Resolution:   When a new database is created the defaults are loaded from a template file.  This occurs even if you're copying a database from somewhere else.  Sometimes the standard template gets corrupted.  In this case you'll want to use the master default database, template0, for your defaults.  Assuming you still have the original data to create the database (presumably from a pg_dump command), you'll need to:

1) Get rid of the current database by typing "dropdb -U postgres (database name)"

2) Add the following three lines specifying the database template (chnge "database" to your database, e.g. "tactical"):
CREATE DATABASE "database" WITH TEMPLATE = template0 ENCODING = 'SQL_ASCII';
ALTER DATABASE "database" OWNER TO postgres;
\connect "database"

3) Reload the database WITHOUT first creating it, as follows:
psql -U postgres template1 < (file name) > /dev/null

4) Test.  If ODBC still doesn't work, you might have corrupted the template0 database.  There are instructions on the postgresql.org website for fixing this, but suffice it to say you might be in for a long day.

NOTE 1: If you already have a "CREATE DATABASE" command in the source database, verify that it specifies using template0.  Change it if necessary; don't try to include 2 "create database" lines.  If it already specifies template0 as the template comment on step 4.
NOTE 2:  Please ignore the Postgresql documentation relative to the -T option on the "createdb" command.  I couldn't get it to work correctly.  But putting the "create database" lines above into the source seems to work well.