Forum Italiano sui Prodotti NI

annulla
Visualizzazione dei risultati per 
Cerca invece 
Intendevi dire: 

TestStand SQL, problemi con le query

Risolto!
Vai alla soluzione

Buongiorno,

sto iniziando a utilizzare TestStand (dispongo della v 3.5) per fare una procedura nella quale, alla fine di un collaudo, devo accedere a un database relazionale SQL, e mi funziona quasi tutto.

Ho problemi quando nelle query devo riferirmi a variabili NUMERICHE, mentre non ho problemi con variabili STRINGA.

Mi spiego, se in una tabella (p.e. «modelli») ho un campo di tipo STRINGA (p.e. il campo «Nome») e inoltre dispongo di una variabile di TestStand anch'essa di tipo STRINGA (p.e. «Locals.StringaNome»)  allora non ho problemi a fare una query dove c'è il confronto tra le due stringhe:

     "SELECT * FROM `modelli` WHERE  Nome=" + Locals.StringaNome


Un analogo confronto, ma tra NUMERI, mi riesce solo quando immetto direttamente il valore assoluto
per esempio con un campo «IDmodello» di tipo INT(1) :

     "SELECT * FROM `modelli` WHERE  IDmodello= 7"


e non riesco quando il medesimo valore è in una variabile numerica (p.e. «Locals.NumeroID»  già inizializzata a 7)
non mi funzionano cose del tipo:

     "SELECT * FROM `modelli` WHERE  IDmodello=" + Locals.NumeroID
     "SELECT * FROM `modelli` WHERE  IDmodello=" + "Locals.NumeroID"
     "SELECT * FROM `modelli` WHERE  IDmodello=" + 'Locals.NumeroID'


Help me please!

0 Kudos
Messaggio 1 di 3
5.459Visualizzazioni
Soluzione
Accettato da autore argomento _gianni_

Ciao,

da quello che scrivi mi pare tu stia componendo la query SQL in una expression di teststand, giusto? Nelle expression puoi utilizzare l'operatore '+' per concatenare (solo) le strighe quindi credo tu debba prima convertire in stringa la variabile numerica. Prova con:

 

"SELECT * FROM `modelli` WHERE  IDmodello=" + str(Locals.NumeroID)

 

Ciao

0 Kudos
Messaggio 2 di 3
5.458Visualizzazioni

Ciao,

ti ringrazio della pronta risposta,

 

gli esempi di query che indicavo sono semplificazioni di query che utilizzo negli step OpenSQLstatement  e  DataOperation ,  sempre nel tag  General -> EditDataOperation

ma non cambia nulla,

la tua informazione  «...concatenare (solo) le stringhe...»  è stata comunque risolutiva, infatti io partivo dal presupposto errato di concatenare stringhe  oppure numeri   dovendo badare  al tipo di campo (della tabella del DB) col quale dovevo fare il confronto, perciò pensavo di dover trovare due modi differenti per risolvere confronti tra stringhe  e confronti  tra numeri

e per tale presupposto ritenevo necessario dover sempre creare variabili coerenti col tipo  col quale erano destinete a essere confrontate

 

ciao,

ancora grazie

e a buon rendere! 

 

gianni

0 Kudos
Messaggio 3 di 3
5.454Visualizzazioni