Check constraint specifies a condition that is enforced for each row of the table on which the constraint is defined. Once constraint is defined, insert or update to the data within the tables is checked against the defined constraint.
Yes. If the table has Unique Key then it is posible to create a Foreign key constraint