Просто задайте уникален индекс за съставен от (потребителско име, дата).
ALTER TABLE `table` ADD UNIQUE INDEX `name` (`username`, `date`);
Като алтернатива можете да опитате да
ALTER TABLE `table` DROP PRIMARY KEY, ADD PRIMARY KEY(`username`,`date`);
и мисля, че в последния случай трябва тези колони да бъдат декларирани НЕ НУЛЕВИ.