MySql — добавление N строк по условию
В таблицах связей обычно делают первичный ключ на оба поля.
И insert ignore
Пока тут тихо и незаметно обсуждали составные ключи, в порядке развлечения предложу второй вариант:

INSERT INTO char_use (shot_id, char_id)
SELECT shot.id, 9
FROM shot
LEFT JOIN char_use ON shot.shot_id = char_use.shot_id
WHERE char_use.shot_id IS NULL
AND 1 = 1

Этот запрос не будет даже предпринимать попытки вставить неуникальную запись.