Při přístupu k RDBMS je výsledná sada obvykle orientovaná na řádky. To znamená, že kdykoli zavoláte ResultSet::next(), kurzor se přesune na další řádek. To je důvod, proč vaše smyčka
for (int i = 0; i < columncount; i++)
{
while (res->next())
{
...
}
}
zobrazuje pouze první atribut.
Normálně přepínáte vnitřní a vnější smyčky, jako je
while (res->next())
{
for (int i = 0; i < columncount; i++)
{
...
}
}
Ale pokud opravdu potřebujete přistupovat k jednomu sloupci najednou, budete muset zkontrolovat, zda ResultSet umožňuje resetovat kurzor na první řádek. Pokud ne, musíte data buď uložit do mezipaměti, nebo zadat stejný dotaz SQL znovu a znovu.