En algunas ocasiones por el motivo que sea, si trabajamos con bases de datos podemos encontrarnos con palabras que deberían tener la primera letra en mayúscula y sin embargo está todo el texto escrito en mayúsculas o minúsculas. Vamos a ver como capitalizar la primera letra con una consulta MySQL.
Es tan simple como ejecutar una consulta, pero si no estás seguro puede que prefieras primero probarlo en una tabla con pocas celdas (si tienes muchas puede que le cueste un poco) y sobretodo haz una copia de seguridad por lo que pudiera pasar.
Poner la primera letra de una columna en mayúsculas con MySQL
Tener también presente que con esto vamos a modificar todos los registros de una columna, es decir que si por ejemplo nuestra base de datos es de libros, y tenemos un campo que se llama título, modificaremos todas las celdas título de todos los libros.
UPDATE tabla_libros SET `titulo` = CONCAT(UCASE(LEFT(`titulo`, 1)), LCASE(SUBSTRING(`titulo`, 2)));
Con esta consulta le estamos diciendo lo siguiente:
- Actualiza la tabla_libros (tu pondrás el nombre de tu tabla).
- Cogemos la celda título y extraemos la primera letra de la celda y la convertimos en mayúsculas
- Cogemos la celda título y extraemos a partir de la segunda letra, y lo convertimos en minúsculas
- La parte CONCAT sirve para unir la primera letra que hemos hecho mayúscula con el resto de las letras que hemos convertido a minúsculas
Si por el contrario queremos actualizar únicamente una celda en concreto, tendremos que añadir la cláusula where y decirle la condición, por ejemplo vamos a actualizar el libro o libros que sea de la categoría terror (también podemos usar la id o cualquier otro campo)
UPDATE tabla_libros SET `titulo` = CONCAT(UCASE(LEFT(`titulo`, 1)), LCASE(SUBSTRING(`titulo`, 2))) WHERE `categoria` = 'Terror';
De esta forma actualizaremos solo los que coincidan con la categoría terror. Si queremos añadir más condiciones solo tenemos que hacerlo de forma normal «WHERE `categoria` = ‘Terror’ AND `autor` = ‘Stephen King’;»