En MariaDB, JSON_VALID() es una función integrada que le permite verificar si un valor es o no un documento JSON válido.
Pasas el valor como argumento y JSON_VALID() devuelve 1 si es un documento JSON válido y 0 si no.
Sintaxis
La sintaxis es así:
JSON_VALID(value) Ejemplo
Aquí hay un ejemplo para demostrarlo.
SELECT JSON_VALID('{ "product" : "Cup" }'); Resultado:
+-------------------------------------+
| JSON_VALID('{ "product" : "Cup" }') |
+-------------------------------------+
| 1 |
+-------------------------------------+ En este caso, el argumento es un documento JSON válido.
Esto es lo que sucede si eliminamos parte del documento:
SELECT JSON_VALID('{ "product" }'); Resultado:
+-----------------------------+
| JSON_VALID('{ "product" }') |
+-----------------------------+
| 0 |
+-----------------------------+ Ahora no es un documento JSON válido.
Arreglos
Las matrices se consideran un documento JSON válido.
Ejemplo:
SELECT JSON_VALID('[ 1, 2, 3 ]'); Resultado:
+---------------------------+
| JSON_VALID('[ 1, 2, 3 ]') |
+---------------------------+
| 1 |
+---------------------------+ Argumentos nulos
Si el argumento es NULL , el resultado es NULL :
SELECT JSON_VALID(null); Resultado:
+------------------+ | JSON_VALID(null) | +------------------+ | NULL | +------------------+
Recuento de parámetros incorrecto
Llamando a JSON_VALID() sin un argumento da como resultado un error:
SELECT JSON_VALID(); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_VALID'
Es lo mismo cuando proporciona demasiados argumentos:
SELECT JSON_VALID('a', 'b'); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_VALID'