Разумеется, несколько записей для одного объекта - как минимум нелогично. И считать, что языков всегда будет 3 тоже. Предложение простое - выбрать основной язык (на котором работают сотрудники, тот на котором объект обязан быть назван) и создать таблицу перевода:
язык ( id ; language )
перевод ( id AUTO_INCREMENT ; язык ; таблица ; строка ; значение )
Т.е. вы создали город "Москва" - просто один и в интерфейсе рядом кнопка "переводы" - открывается всплывающее окно с другими языка (ua, en) вводятся переводы, сохраняются, кнопка перекрашивается (красная - нет переводов; серая - частично переведено ; синяя - все переведено ) и title заодно можно использовать для информирования. А записи в БД следующие
города ( 1 , 'Москва'-выбрали основной - русский )
перевод ( * , 'города' , 1 - id записи в таблице города , 1-для украинского , 'Москва' - так же, наверное)
перевод ( * , 'города' , 1 - тот же id той же одной Москвы, 2-для английского , 'Moscow')
перевод ( * , 'улицы' , 1 , 2-для английского , 'Central st.') - т.е. перевели улицу "центральная" в таблице улицы