J'ai une page .jsp où j'ai une table d'interface graphique qui affiche les enregistrements d'une base de données Oracle. Cette table permet un comportement de pagination typique, tel que "PREMIER", "SUIVANT", "PRECEDENT" et "DERNIER". Les enregistrements sont obtenus à partir d'un objet Java ResultSet renvoyé par l'exécution d'une instruction SQL.Un ResultSet charge-t-il toutes les données en mémoire ou uniquement lorsqu'elles sont demandées?
Ce ResultSet peut être très grand, donc ma question est:
Si j'ai un ResultSet contenant un million d'enregistrements, mais ma table affiche uniquement les données des dix premiers enregistrements du ResultSet, est seulement les données extraites lorsque je commence à demander des données d'enregistrement ou toutes les données sont-elles chargées en mémoire une fois que ResultSet est renvoyé suite à l'exécution d'une instruction SQL?
-t-pilote MySql (mysql-connector-j) soutenir un tel comportement "intelligent"? – Roman
@Roman L'API JDBC n'indique pas qu'il s'agit d'une méthode facultative. Je suppose que toutes les implémentations, y compris mysql, supporteraient cela. –
Si "toute la mise en œuvre prend en charge" alors comment JDBC-ODBC pont peut le faire pour MS Access? L'accès ne supporte pas les "limites" ou quelque chose de similaire, n'est-ce pas? – Roman