Attributs de curseur pour les instructions de requête

Vous pouvez définir des attributs de curseur pour les résultats des requêtes que vous exécutez à partir de méthodes intégrées ou annotées. Grâce à ces attributs, vous pouvez créer des résultats accessibles par défilement ou pouvant être mis à jour.
Vous pouvez définir les attributs suivants :
Attributs définissant le mode d'accès concurrent pour un objet ResultSet
java.sql.ResultSet.CONCUR_READ_ONLY
Constante entière spécifiant que le curseur refuse les mises à jour lorsque le résultat de la requête est ouvert.
java.sql.ResultSet.CONCUR_UPDATABLE
Constante entière spécifiant que le curseur autorise les mises à jour lorsque le résultat de la requête est ouvert.
Avertissement : pureQuery prend en charge les mises à jour positionnées et les supprime à l'aide des méthodes annotées, mais pas avec les méthodes intégrées.
Attributs indiquant si un objet ResultSet doit ou non être fermé lorsque la méthode Connection.commit() est appelée
java.sql.ResultSet.CLOSE_CURSORS_AT_COMMIT
Constante entière indiquant que le curseur est fermé à la fin d'une transaction.
java.sql.ResultSet.HOLD_CURSORS_OVER_COMMIT
Constante entière indiquant que le curseur reste ouvert à la fin d'une transaction.
Attributs définissant le type d'un objet ResultSet
java.sql.ResultSet.TYPE_FORWARD_ONLY
Constante entière indiquant que le curseur ne peut se déplacer que vers l'avant.
java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE
Constante entière indiquant que le curseur peut se déplacer vers l'avant et vers l'arrière. Le résultat de la requête produit un cliché des données.
java.sql.ResultSet.TYPE_SCROLL_SENSITIVE
Constante entière indiquant que le curseur peut se déplacer vers l'avant et vers l'arrière. Le résultat de la requête reflète les modifications apportées aux données lorsque le curseur est mis en suspens.
Si vous utilisez cet attribut pour une requête qui est liée à DB2 Database for Linux, UNIX, and Windows ou à DB2 for z/OS, le curseur est lié en tant que curseur SENSITIVE STATIC SCROLL. Consultez le manuel DB2 for z/OS Application Programming and SQL Guide pour plus d'informations sur ce type de curseur.
Par défaut, lorsque vous ne spécifiez pas explicitement d'attributs, pureQuery utilise les attributs suivants :

Utilisation de méthodes annotées pour définir des attributs de curseur

Utilisez l'annotation @Cursor, associée à l'annotation @Select, pour spécifier les attributs de curseur de votre choix pour un résultat de requête. Consultez le diagramme de syntaxe pour les méthodes annotées exécutant des instructions SQL sur des bases de données.

Utilisation de méthodes intégrées pour définir des attributs de curseur

Utilisez l'une des méthodes suivantes dans l'interface Data :
  • public <T> T query (int type, int concurrency, int holdability, String sql, ResultHandler<T> handler, Object... parameters);
  • public Iterator<Map<String, Object>> queryIterator (int type, int concurrency, int holdability, String sql, Object... parameters);
  • public <T> Iterator<T> queryIterator (int type, int concurrency, int holdability, String sql, Class<T> returnClass, Object... parameters);
  • public <T> Iterator<T> queryIterator (int type, int concurrency, int holdability, String sql, RowHandler<T> rowHandler, Object... parameters);
  • public ResultSet queryResults (int type, int concurrency, int holdability, String sql, Object... parameters);
Consultez le fichier pureQuery Javadoc pour l'interface Data pour plus d'informations sur ces méthodes.

Commentaires