It certainly is! Are you saying that Table2 defines the possible values for Field1, Field2 and Field3? If so, the PK of Table2 should be the actual value, not an arbitrary "ID". For example, supposing the 2 values are Male and Female:
Create table Table2
( gender_value varchar2(6) primary key
, ... );
Create table Table1
( ID int primary key
, Field1 references Table2
, Field2 references Table2
, Field3 references Table2
);
insert into Table2 (gender_value, ... ) values ('Male', ... );
insert into Table2 (gender_value, ... ) values ('Female', ... );
Now field1, field2 and field3 values are constrained to be Male or Female.
Of course, you don't require a Table2 to do that:
Create table Table1
( ID int primary key
, Field1 varchar2(6) check (field1 in ('Male,'Female'))
, Field2 varchar2(6) check (field1 in ('Male,'Female'))
, Field3 varchar2(6) check (field1 in ('Male,'Female'))
);