Hola turminator:
La pregunta que te haría aquí sería en primer lugar, ¿por qué tienes que sustituir el valor del código por el del nombre de la provincia?
El modelo que tienes es correcto, es decir, tener una tabla "catálogo" donde tengas todas las provincias existentes, y una tabla de "datos" donde hagas referencia a tu tabla catálogo... esa es la esencia del modelo Entidad-Relación, el manejo de llaves foráneas, integridad de la información, etc... no entiendo por qué quieres arruinar tus datos de esta manera...
Si la razón que me vas a decir es que quiere mostrar el nombre de la provincia, no su código... bueno, pues no sería una razón válida, pues con hacer un simple JOIN quedaría solucionado. Entonces??? pero bueno, para hacer lo que quieres en realidad tienes muchas formas de hacerlo, una sería más o menos así:
Código MySQL:
Ver original+------+-------------+
| idX | descripcion |
+------+-------------+
| 1 | uno |
| 2 | dos |
| 3 | tres |
+------+-------------+
+------+--------------+--------------+
| idY | descripcionY | descripcionX |
+------+--------------+--------------+
| 1 | one | 1 |
| 2 | two | 2 |
| 3 | tres | 3 |
+------+--------------+--------------+
mysql
> UPDATE tablaY
, tablaX
SET tablaY.descripcionX
= tablaX.descripcion
-> WHERE tablaY.descripcionX
= tablaX.idX
; Query OK, 3 rows affected (0.03 sec)
+------+--------------+--------------+
| idY | descripcionY | descripcionX |
+------+--------------+--------------+
| 1 | one | uno |
| 2 | two | dos |
| 3 | tres | tres |
+------+--------------+--------------+
Aquí debes tener cuidado en que los tipos de datos y las longitudes de tus columnas sean iguales, pues de lo contrario es posible que tengas pérdida de información o que ni siguiera te permita hacer la actualización.
Saludos
Leo.