С термином река склоняются простые русские, славянские и освоенные названия: на реке Неве, на реке Висле (но: на реке Иртыш – географические названия обычно не склоняются, когда род обобщающего нарицательного слова и топонима не совпадают).
Корректно: на Неве, на реке Неве.
Правильно: на Неве, на реке Неве, в Москве, в городе Москве. О склонении географических названий см. в «Письмовнике».
Правильно. С географическим термином река наблюдается тенденция склонять названия женского рода и не склонять названия мужского рода: у реки Волги, но на реке Енисей.
Правильно: ...по реке Неве. См. в «Письмовнике».
С географическим термином река наблюдается тенденция склонять названия женского рода и не склонять названия мужского рода: на реке Томи, но: на реке Днепр.
Рекомендуемый вариант: на реке Пра (хотя на реке Оке). Поскольку наименование не относится к числу широкоизвестных, из сочетания на реке Пре нелегко вывести его начальную форму.
Названия рек согласуются с родовым наименованием: на реке Мзымте.
Корректно: на берегу реки Упы.