An index on a table is a data structure that makes random access to the rows
fast and efficient. It helps to optimize the internal organization of a table
as well.
A foreign key is simply a pointer to a corresponding column in another table
that forms a referential constraint between the two tables.