So here's another design question;

Should there be a defined index for a join table, if that index would have to be the entirity of the join table?

I have two axes of a matrix as the keys of the join table. This forms a many-to-many relationship between the two.
fk1 INT(5),
fk2 INT(5),
data VARCHAR(50)

fk1,fk2 and data are not unique. (fk1,fk2) is not unique. Neither is (fk1,data) or (fk2,data). So the only index possible is (fk1,fk2,data), which is unique, but seems rather moot when the order of the data in the result query is not a factor and would result in the index being the entire table.

Am I missing anything here, oh great gurus of the databases?