SQLite extension again: how do you read the JSON received with a different SQLite extension

Hi All,

I am having problems to create my app which has to use SQLite as its main database. My goal is to receive data from a MySQL database in JSON format and save it into a SQLite database, once the users are going to work with my app in places that there is no WIFI and other internet signal.

With SQLite extension from Carlos Pedrosa, I receive the JSON in this format:

But now, with other SQLite extensions I really don't know how to parse it, in order to get it and insert it into a SQLite database. Can you guide on this? I am receiving JSON this way:

So what do I have to do, considering using other SQLite extensions like one from @TIMAI2?

Thanks in advance,

Use the dictionary blocks to get the data, then generate an SQL INSERT statement.

1 Like

Do you have an example about this? After 5 years not using App Inventor, I've seen some things different in the way we use AI

Please provide, in text, your JSON, as an example

1 Like
[{"nome":"Encarregado Exemplo","descricao":"Encarregados","login":"encarregado","senha":"202cb962ac59075b964b07152d234b70","cd_equipe":"23","descricao_equipe":"EQUIPE DERIK"}]

I will need a few minutes....

1 Like

No problem. Thank you very much for your help and time.

This is one way

INSERT INTO table_name(cd_equipe,descricao,descricao_equipe,login,nome,senha) VALUES('23','Encarregados','EQUIPE DERIK','encarregado','Encarregado Exemplo','202cb962ac59075b964b07152d234b70')

The order is different, and assumes your columns in your sqlite table_name match those in the json

You could make a procedure for re-use.

An alternative is to do something like this:

Parse a result (by Taifun)

Thank you very much. Now it's clear. Only the double quotes are missing in the data to be inserted, but it's easy to adjust that.

Once again, thank you.

Worth noting, the change of order (keys alphabetically / key:values) happens when the json string is converted to a dictionary.

1 Like

Ok, noted.

Yes, sorry, I missed that out. Image above replaced with quotes inserted.

You should use single quotes....

1 Like

Thanks again!!

Regards,

Hi @TIMAI2 ,

Just a question: How can I do when JSON have more than one line of data? Like this:

[{"id":1,"desc_material":"ANTEPARO SEMCO","id_unidade":"","desc_unidade":""},{"id":2,"desc_material":"AREIA","id_unidade":"","desc_unidade":""},{"id":3,"desc_material":"BARRA DE ATERRAMENTO","id_unidade":"","desc_unidade":""},{"id":4,"desc_material":"BAUXITA","id_unidade":"","desc_unidade":""},{"id":5,"desc_material":"BRAÇO PROJETADO 4,00","id_unidade":"","desc_unidade":""},{"id":6,"desc_material":"CABO ATERRAMENTO 4,00MM","id_unidade":"","desc_unidade":""},{"id":7,"desc_material":"CABO PP 2,00X4MM","id_unidade":"","desc_unidade":""},{"id":8,"desc_material":"CABO PP 2X1,5MM","id_unidade":"","desc_unidade":""},{"id":9,"desc_material":"CABO PP 4X1,5MM","id_unidade":"","desc_unidade":""},{"id":10,"desc_material":"CABO PP 8X1,5MM","id_unidade":"","desc_unidade":""},{"id":11,"desc_material":"CAIXA DE ENTRADA","id_unidade":"","desc_unidade":""},{"id":12,"desc_material":"CATALIZADOR","id_unidade":"","desc_unidade":""},{"id":13,"desc_material":"CIMENTO","id_unidade":"","desc_unidade":""},{"id":14,"desc_material":"COLA FRIA","id_unidade":"","desc_unidade":""},{"id":15,"desc_material":"COLA INDUFIX","id_unidade":"","desc_unidade":""},{"id":16,"desc_material":"COLUNA EXTENSORA","id_unidade":"","desc_unidade":""},{"id":17,"desc_material":"CONECTOR DE DERIVAÇÃO","id_unidade":"","desc_unidade":""},{"id":18,"desc_material":"CONECTOR DE EMENDAS 2 VIAS","id_unidade":"","desc_unidade":""},{"id":19,"desc_material":"CONJ. ATERRAMENTO","id_unidade":"","desc_unidade":""},{"id":20,"desc_material":"CONJ. ISOLADOR CERAMICO","id_unidade":"","desc_unidade":""},{"id":21,"desc_material":"CONTROLADOR 8FASES","id_unidade":"","desc_unidade":""},{"id":22,"desc_material":"DIJUNTOR BIPOLAR 25A","id_unidade":"","desc_unidade":""},{"id":23,"desc_material":"ESFERA 2-A","id_unidade":"","desc_unidade":""},{"id":24,"desc_material":"ESFERA 2-C","id_unidade":"2","desc_unidade":"Sacos"},{"id":25,"desc_material":"ESFERA 2-E","id_unidade":"","desc_unidade":""},{"id":26,"desc_material":"GRUPO FOCAL PROJETADO","id_unidade":"","desc_unidade":""},{"id":27,"desc_material":"GRUPO FOCAL REPETIDOR","id_unidade":"","desc_unidade":""},{"id":28,"desc_material":"HOTSPRAY AMARELO","id_unidade":"","desc_unidade":""},{"id":29,"desc_material":"HOTSPRAY BRANCO","id_unidade":"2","desc_unidade":"Sacos"},{"id":30,"desc_material":"LUMINARIAS","id_unidade":"","desc_unidade":""},{"id":31,"desc_material":"PEDRA","id_unidade":"","desc_unidade":""},{"id":32,"desc_material":"PESTANA SEMCO 200MM","id_unidade":"","desc_unidade":""},{"id":33,"desc_material":"PLASTICO A FRIO BRANCO","id_unidade":"","desc_unidade":""},{"id":34,"desc_material":"PLASTICO A FRIO PRETO","id_unidade":"","desc_unidade":""},{"id":35,"desc_material":"SOLVENTE","id_unidade":"","desc_unidade":""},{"id":36,"desc_material":"SUPORTE SIMPLES 114MM","id_unidade":"","desc_unidade":""},{"id":37,"desc_material":"TINTA ACRILICA BASE D AGUA AMARELA","id_unidade":"","desc_unidade":""},{"id":38,"desc_material":"TINTA ACRILICA BASE D AGUA BRANCA","id_unidade":"","desc_unidade":""},{"id":39,"desc_material":"TINTA ACRILICA BASE D AGUA PRETO","id_unidade":"","desc_unidade":""},{"id":40,"desc_material":"TINTA ACRILICA BASE D AGUA VERMELHA","id_unidade":"","desc_unidade":""},{"id":41,"desc_material":"TWISTER","id_unidade":"","desc_unidade":""}]

TIA,

See here (scroll down a bit)

You could try something like this:

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.