query sql JSON_VALUE e spazi nei campi in JSLSto cercando di eseguire una query su una tabella in una tabella Oracle con un campo JSON. Sto utilizzando la funzione JSON_VALUE nel file sql. Alcuni campi JSON contengono spazi, quindi inserisco virgolette doppie attorno ai valori e funziona quando si esegue la query al di fuori di JSL ma genera un errore durante l'esecuzione della query come mostrato di seguito in jsl. Grazie in anticipo per tutto l'aiuto che potrai fornire.
JSL:
dbc = crea connessione al database("Driver={Oracle in InstantClient11_1};UID=xxxx;DBQ=yyyy;PWD=zzzz;");
user_sql ="select json_value(feature, '$."ball dimension"') as ball_dimension from blah";
utente_dt = esegui sql(dbc, utente_sql);
Automazione e scriptingAccesso ai datifinestreRi: query sql JSON_VALUE e spazi nei campi in JSLDevi sfuggire a quelle virgolette e di solito questi metodi funzionano (userei l'opzione 1)
Names Default To Here(1);
// user_sql ="select json_value(feature, '$."ball dimension"') as ball_dimension from blah";
// Option 1
user_sql1 = "\[select json_value(feature, '$."ball dimension"') as ball_dimension from blah]\";
// Option 2
user_sql2 = "select json_value(feature, '$.\!"ball dimension\!"') as ball_dimension from blah";
// Print demo
Write("\!N" || user_sql1);
Write("\!N" || user_sql2);
https://www.jmp.com/support/help/en/18.0/#page/jmp/jsl-syntax-rules.shtml - Cerca le virgolette doppie

Modificare:
Giusto per aggiungere qualche spiegazione in più. Se vuoi avere virgolette doppie nella tua stringa in JMP, devi eseguire l'escape (ci sono anche altri caratteri che devono essere sottoposti a escape). Puoi eseguire l'escape delle virgolette singole doppie sostituendole con \!" e se desideri eseguire l'escape automatico di tutto nella stringa, avvolgila con "\[...]\" anziché solo "...".
Ri: query sql JSON_VALUE e spazi nei campi in JSLGrazie, Jarmo!