Data Relationship between Provinces and Cities
How about this:

province(province_id, province_name, ...)
cities(city_id, city_name, province_id, ...)


This is (one to many) relationship. It is not affected by the fact that more than one city have the same name. Therefore, in cities table, the combination (city_name, province_id) is unique. city_name by itself is not unique.