Lepší řešení #3 – uživatel může zadat neomezeně příkazů, které nevracejí výsledek.
authorFrantišek Kučera <franta-hg@frantovo.cz>
Sat, 18 Jul 2009 17:28:35 +0200
changeset 520eeae8c247cc
parent 51 bc821c6d090c
child 53 c06dfb1a2678
Lepší řešení #3 – uživatel může zadat neomezeně příkazů, které nevracejí výsledek.
java/sql-vyuka/src/java/cz/frantovo/sql/vyuka/dao/PiskovisteDAO.java
     1.1 --- a/java/sql-vyuka/src/java/cz/frantovo/sql/vyuka/dao/PiskovisteDAO.java	Sat Jul 18 17:16:41 2009 +0200
     1.2 +++ b/java/sql-vyuka/src/java/cz/frantovo/sql/vyuka/dao/PiskovisteDAO.java	Sat Jul 18 17:28:35 2009 +0200
     1.3 @@ -57,16 +57,12 @@
     1.4                      /**
     1.5                       * Ošetříme případ, kdy uživatel zadá SQL příkaz, který nevrací výsledkovou sadu.
     1.6                       * Typicky nastavení výchozího schématu: SET search_path = '…';
     1.7 -                     * pokud bude pocetPokusu = 0 a první dotaz nevrátí výsledkovou sadu,
     1.8 -                     * procházení se ukončí a uživatel neuvidí žádnou tabulku (i když další příkazy už výsledkové sady vracely).
     1.9                       * Poznámka: jeden „SET search_path = '…'“ se obvykle předřazuje uživatelskému SQL (viz PiskovisteDAO.xml).
    1.10 -                     */
    1.11 -                    int pocetPokusuBezRS = 1;
    1.12 -                    while (ps.getMoreResults() || pocetPokusuBezRS > 0) {
    1.13 -                        pocetPokusuBezRS--;
    1.14 +                     */                    
    1.15 +                    while (ps.getMoreResults() || ps.getUpdateCount() > -1) {
    1.16                          rs = ps.getResultSet();
    1.17                          if (rs == null) {
    1.18 -                            /** Jedná se buď o „update count“ nebo tu už žádná další výsledková sada není. */
    1.19 +                            /** Jedná se o „update count“. */
    1.20                          } else {
    1.21                              v.getTabulky().add(zpracujVysledek(rs));
    1.22                          }