prepareAllSQLStatements
Die Builddeskriptoroption prepareAllSQLStatements steuert die Arten von JDBC-Objekten, die EGL zum Ausführen einer SQL-Anweisung verwendet.
- PreparedStatement
- Das Objekt wird von der Anweisungsklasse abgeleitet, enthält eine SQL-Anweisung und lässt Parameter zu.
- Statement
- Dieses allgemeinere Objekt enthält keine SQL-Anweisung und lässt keine Parameter zu.
Welches Objekt von EGL verwendet wird, hängt von einer Reihe von Faktoren ab. EGL generiert immer PreparedStatements für DB2 und Derby. In den meisten Fällen sind PreparedStatements effizienter, da sie vom J2EE-Server im Cache gespeichert und wiederverwendet werden können. In anderen Umgebungen als der J2EE-Umgebung können PreparedStatements zu einer Leistungsverschlechterung führen. Das Erzwingen der Verwendung von PreparedStatements wird daher als Option offen gelassen. Der Standardwert ist NO. Dies bedeutet, dass EGL entscheidet, welches Objekt verwendet werden soll.
Testen Sie beide Einstellungen für Ihre Anwendungen und finden Sie heraus, welche Einstellung Ihnen eine bessere Leistung bringt.
Möglicherweise können Sie Ihre Leistung auch verbessern, indem Sie PreparedStatements im Cache speichern. Details finden Sie im Abschnitt “cachePreparedStatements.”
Werte
Die Builddeskriptoroption prepareAllSQLStatements hat die folgenden Werte:
- YES
- EGL verwendet das Objekt "PreparedStatement" anstatt des Objekts "Statement", um SQL-Anweisungen an die Datenbank zu senden. Bei DB2 und Derby verwendet EGL immer das Objekt "PreparedStatement", auch wenn Sie die Option auf YES setzen.
- NO (Standardwert)
- EGL wählt anhand von anderen Faktoren das Objekt "Statement" oder "PreparedStatement" aus.