2016-12-01 4 views
1

ich diese Frage haben Ich versucheLauf dynamische SQL-Abfrage von groovy

"SELECT * FROM customers where fieldid=2727675;" 

jedoch die ganze Zeit fieldID Änderungen auszuführen. Kann ich stattdessen den Parameter übergeben und der Parameter hat den sich ändernden Wert?

so etwas wie das? dynamicvalue = 1234567

"SELECT * FROM Kunden, bei denen fieldid = dynamicvalue;"

+1

Sie meinen wie 'params = [foo: 1234567]; sql.rows ('select * von Kunden mit fieldid =: foo', params) '? siehe [die Api Doc] (http://docs.groovy-lang.org/latest/html/api/groovy/sql/Sql.html) –

+0

Sie können auch einfach eine gstring "SELECT * FROM Kunden, wo Feldid = $ {dynamischerWert}; " – Demian

Antwort

0

Sie benötigen eine benutzerdefinierte propertie auf Ihrem Testcase Ebene hinzufügen, nennen Sie es fieldID, dann sollten Sie Ihre Abfrage wie:

SELECT * FROM customers where fieldid=${#testCase#fieldid}; 

Sie Ihre Parameter dynamisch mit jxl aus einer Excel-Datei füllen oder andere Bibliothek