Wystarczy ustawić unikalny indeks na złożony z (nazwa użytkownika, data).
ALTER TABLE `table` ADD UNIQUE INDEX `name` (`username`, `date`);
Możesz też spróbować
ALTER TABLE `table` DROP PRIMARY KEY, ADD PRIMARY KEY(`username`,`date`);
i myślę, że w tym drugim przypadku konieczne jest zadeklarowanie tych kolumn jako NIE NULL.