как подавить ошибку MySQL Java - PullRequest
0 голосов
/ 06 марта 2012

Я пытаюсь автоматизировать добавление ссылок из RSS-канала в таблицу mySQL. Я хочу получать информацию от канала каждый час, но обычно есть ссылки, которые я уже перехватил, которые все еще присутствуют на странице RSS, когда я снова ссылаюсь на них.

У меня есть Java-код, который работает в первый раз, но когда я пытаюсь добавить дубликат файла в таблицу SQL, я получаю исключение. Я думал, что mySQL будет просто игнорировать и передавать дубликаты, так как я использую ключ MUL в названии поля, о котором идет речь, но вместо этого я получаю исключение.

Любые идеи о том, как добиться этого? Я не хочу дубликатов и не хочу, чтобы дубликаты мешали добавлению других новых вещей.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 07 марта 2012

Вы также можете использовать INSERT IGNORE INTO ..., если хотите сохранить старое значение вместо его замены.

0 голосов
/ 06 марта 2012

Вы можете использовать REPLACE INTO вместо INSERT INTO:

REPLACE работает точно так же, как INSERT, за исключением того, что если старая строка в таблице имеет то же значение, что и новая строка для PRIMARY KEY илиУНИКАЛЬНЫЙ индекс, старая строка удаляется перед вставкой новой строки.

http://dev.mysql.com/doc/refman/5.0/en/replace.html

...