Saltar al contenido principal
Documentos
FuncionesExpresionesKeywordsDeclaracionesCláusulas

Función MySQL JSON_VALID()

La función `JSON_VALID()` de MySQL comprueba si un documento JSON es válido. Devuelve `1` si el JSON es válido y `0` si no lo es.

Utilización

La función `JSON_VALID()` se utiliza para validar documentos JSON almacenados en una base de datos, asegurándose de que siguen el formato JSON adecuado. Es especialmente útil para comprobar la integridad de los datos antes de realizar operaciones en campos JSON. Ten en cuenta que `JSON_VALID()` sólo comprueba la validez sintáctica y no evalúa la corrección semántica, como los errores lógicos dentro del contenido JSON.

JSON_VALID(json_doc)

En esta sintaxis, `json_doc` es el documento JSON que quieres validar.

Ejemplos

1. Validación básica

SELECT JSON_VALID('{"name": "John", "age": 30}');

Este ejemplo comprueba si la cadena JSON es válida y devuelve `1` ya que el JSON está formateado correctamente.

2. Comprobación JSON no válida

SELECT JSON_VALID('{"name": "John, "age": 30}');

Aquí, la función devuelve `0` porque la cadena JSON no es válida debido a que faltan comillas después de `"Juan"`.

3. Validación en una tabla

SELECT id, data, JSON_VALID(data) AS is_valid
FROM json_table;

En este ejemplo, se validan los datos JSON de cada fila de la `json_table`, y los resultados se muestran en una nueva columna llamada `is_valid`.

Consejos y buenas prácticas

  • Validar antes de almacenar. Utiliza siempre `JSON_VALID()` para comprobar los datos JSON antes de insertarlos o actualizarlos para garantizar la integridad de los datos.
  • Utilízalo con sentencias condicionales. Combina `JSON_VALID()` con cláusulas `WHERE` para filtrar los registros JSON no válidos durante la recuperación de datos.
  • Optimiza el tratamiento de los datos. Valida regularmente los campos JSON para evitar problemas en las aplicaciones que dependen de datos JSON. Ten en cuenta las implicaciones para el rendimiento cuando valides documentos JSON de gran tamaño.
  • Identificación de errores. Aunque `JSON_VALID()` sólo devuelve un booleano, utilízalo junto con el registro de errores para identificar y corregir entradas JSON no válidas.
  • Nota de compatibilidad. `JSON_VALID()` se introdujo en MySQL 5.7.8. Asegúrate de que tu versión admite esta función si trabajas con versiones antiguas de MySQL.

Perfeccionamiento de SQL para principiantes

Adquiere los conocimientos de SQL para interactuar con tus datos y consultarlos.
Empieza a aprender gratis