Erro ao inserir valor em campo do tipo Json

11/07/2018

0

Boa noite a todos!

Estou tentando executar um script por meio do delphi mas tenho este erro como retorno: "''[FireDAC][Phys]-321. Character [(] is missed''". Acontece que esse mesmo script executado diretamente no banco funciona normalmente. Banco de dados postgreSQL 9.4

DO
$$
BEGIN
INSERT INTO parametro
(
modulo,
dados,
cadastrado_em,
alterado_em,
tipo_dado
)
VALUES
(
''TESTE'',
''{"Items":[{"a":0},{"b": 2}]}'',
CURRENT_DATE,
CURRENT_DATE,
''O''
);
END;
$$

Tentei fazer algumas conversões mas sem sucesso(mesmo erro). Alguma dica??
Veronica Silva

Veronica Silva

Responder

Post mais votado

12/07/2018

Veja esta vídeo aula.
Talvez ajude na conversão.
https://www.youtube.com/watch?v=60y_w66zFgs

Raimundo Pereira

Raimundo Pereira
Responder

Mais Posts

12/07/2018

Raimundo Pereira

Ops havia postado o link errado:

Este é o certo : Entendendo o JSON - Pratica
https://www.youtube.com/watch?v=MLoeLpII9IE
Responder

12/07/2018

Veronica Silva

Obrigado pela atenção P2 Técnico, mas a questão era de parser dentro do script SQL. Depois de exaustivamente ler e testar a doccumentação do postgreSQL, consegui resolver. Segue solução.

DO
$$
BEGIN
INSERT INTO parametro
(
modulo,
dados,
cadastrado_em,
alterado_em,
tipo_dado
)
VALUES
(
'TESTE',
json_build_object('IteNs', json_build_array(
json_build_object('a',0,'b',1),
json_build_object('c',2,'d',3)
)
),
CURRENT_DATE,
CURRENT_DATE,
'O'
);
END;
$$
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar