No MariaDB,
JSON_VALID() é uma função interna que permite verificar se um valor é ou não um documento JSON válido. Você passa o valor como um argumento e
JSON_VALID() retorna 1 se for um documento JSON válido e 0 se não. Sintaxe
A sintaxe fica assim:
JSON_VALID(value) Exemplo
Aqui está um exemplo para demonstrar.
SELECT JSON_VALID('{ "product" : "Cup" }'); Resultado:
+-------------------------------------+
| JSON_VALID('{ "product" : "Cup" }') |
+-------------------------------------+
| 1 |
+-------------------------------------+ Nesse caso, o argumento é um documento JSON válido.
Veja o que acontece se removermos parte do documento:
SELECT JSON_VALID('{ "product" }'); Resultado:
+-----------------------------+
| JSON_VALID('{ "product" }') |
+-----------------------------+
| 0 |
+-----------------------------+ Agora não é um documento JSON válido.
Matrizes
As matrizes são consideradas um documento JSON válido.
Exemplo:
SELECT JSON_VALID('[ 1, 2, 3 ]'); Resultado:
+---------------------------+
| JSON_VALID('[ 1, 2, 3 ]') |
+---------------------------+
| 1 |
+---------------------------+ Argumentos nulos
Se o argumento for
NULL , o resultado é NULL :SELECT JSON_VALID(null); Resultado:
+------------------+ | JSON_VALID(null) | +------------------+ | NULL | +------------------+
Contagem de parâmetros incorreta
Chamando
JSON_VALID() sem um argumento resulta em um erro:SELECT JSON_VALID(); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_VALID'
É o mesmo quando você fornece muitos argumentos:
SELECT JSON_VALID('a', 'b'); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_VALID'