Question: What are the adverse effects of having too many lookup tables in the database?

I have to incorportate too many Enumerations, based on the applications. 

What would experts advice?

Answer: 
Initially you have to ask yourself "how many is too many?". If there is a logical relation between two tables, there has to be a FK.

If you don't need the related tables anywhere within the database, you could consider to remove them and use a CHECK constraint with an "IN" clause to enforce data validity. Though, this would cause an alteration of the table with each new value within the enumeration.

My personal advice is to keep the FKs and the tables. It's a clear solution and the database is way better to maintain if there is a describing text available for all those *numbers*.
As Florian, I like a lot more to have tons of Foreign Keys then to have CHECK IN (..) - for a simple reason: you can insert other records on your tables.

Maintaning CHECK IN () is a much bigger problem. Imagine this scenario:

```
CREATE TABLE street
(
   id serial not null,
   st_type varchar(20) not null,
   st_name varchar(100) not null,
   constraint street_pk primary key (id)
   constraint street_type_check check st_type in ('STREET','AVENUE','SQUARE')
);

```

You have 1000 rows with those types checked, correct? If you need to add another one, you will need to drop the constraint and recreate it.

IF you take a item off that list, like SQUARE, what will happen to the rows already commited (and checked at moment of insertion) that have that type? They will still keep an invalid type.

Tables and Foreign Keys are easier to maintain and keep track of.