При использовании инструментов анализа кода (например, FxCop), он рекомендует отметить метод static
, если тот метод не получает доступ к данным экземпляра. Объяснение - то, что существует увеличение производительности. MSDN: CA1822 - Mark участников как статичные .
Это - больше инструкции, чем правило, действительно...
Просто установите уникальный индекс в составе (имя пользователя, дата).
ALTER TABLE `table` ADD UNIQUE INDEX `name` (`username`, `date`);
В качестве альтернативы вы можете попробовать
ALTER TABLE `table` DROP PRIMARY KEY, ADD PRIMARY KEY(`username`,`date`);
, и я думаю, что в последнем случае вам нужно объявить эти столбцы НЕ NULL.
Вместо этого измените текущий первичный ключ на уникальный:
ALTER TABLE table DROP PRIMARY KEY, ADD UNIQUE KEY(username,date);
auto_increment после этого будет нормально работать без каких-либо проблем. Вы также должны поместить уникальный ключ в поле auto_increment, чтобы использовать его для обработки строк:
ALTER TABLE table ADD UNIQUE KEY(id);
Вместо того, чтобы сортировать массив и затем проверять его, я бы предложил написать реализацию функции сортировки сравнения, которая завершается, как только будет найден дубликат, user + thedate, run
ALTER TABLE users ADD UNIQUE KEY user_date_idx (user, thedate);