Eine SQL-Anweisung kann die Werte verwenden, die während der Ausführung an die Parameter der Methode weitergegeben werden, die die Anweisung verwendet. SQL-Anweisungen kennzeichnen diese Parameter mit Marken. Jede Marke entspricht einem Parameter in einer Methode.
Wenn eine Methode aufgerufen wird, werden die Werte für diese Parameter aus den Argumenten abgerufen, die von der aufrufenden Anwendung bereitgestellt werden, und während der Ausführung der SQL-Anweisung verwendet.
Folgende Parametermarken sind in der Klausel FROM einer Anweisung SELECT in einer mit Annotationen versehenen Methode, die für eine speicherinterne Java-Objektgruppe ausgeführt wird, zulässig. Diese beiden Parametermarken bedeuten in der Klausel FROM dasselbe wie an anderen Stellen in der Abfrage.
Sie können nicht beide Typen von Parametermarken in derselben SQL-Anweisung verwenden.
Die Laufzeitkomponenten von pureQuery erhalten die Informationen, die sie zur Klasse der Objektgruppe benötigen, aus der Deklaration der mit Annotationen versehenen Methode.
Folgende Parametermarken sind in der Klausel FROM einer Anweisung SELECT in einer integrierten Methode, die für eine speicherinterne Java-Objektgruppe ausgeführt wird, zulässig.
Sie können nicht beide Typen von Parametermarken in derselben SQL-Anweisung verwenden.
<classname> entspricht dem vollständig qualifizierten Klassennamen der Teildateien der entsprechenden Objektgruppe, der als Parameter übergeben wird, wenn die Methode ausgeführt wird.
Die Laufzeitkomponenten von pureQuery müssen die Klasse kennen, die verwendet werden soll, wenn die Teildateien einer speicherinternen Java-Objektgruppe untersucht werden.
Wenn eine der beiden letzten Formate verwendet wird, wird der Klassenname speziell in der Klausel FROM angegeben wie im folgenden Beispiel:
List<Employee> emps; Dept[] depts; List<Map<String, Object>> list = qocData.queryList ("select e.id, d.name " + "from ?1.com.ibm.data.test.Employee as e, " + "?2.com.ibm.data.test.single.Dept as d " + "where e.deptid=d.id", emps, depts);