El problema que veo, desde el inicio, es que no existe en este update una condición de JOIN:
Código MySQL:
Ver original ch_catalogo, ch_provincias
SET ch_catalogo.field_province
= ch_provincias.NOMBRE
;
Esto es, no estás diciendole a MyQSL cómo relacionar los registros de una tabla con los de la otra, así que MySQL asume que deben existir ciertas cosas: que en ambas tablas hay un campos con idéntico nombre y donde el valor de uno de ellos en una tabla referencia a la PK de la otra tabla.
Sin eso se genera un
producto cartesiano, con resultados inesperados, y muy probablemente incorrecto.
Espero que no hayas intentado esto en una base de datos en producción. Las consecuencias pueden ser catastróficas...
Dinos cuál es el campo que relaciona a ch_catalogo con ch_provincias y cómo se llama en cada caso.