sql >> Databáze >  >> RDS >> Mysql

Procházení sady výsledků

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.




  1. Přidejte dynamická data do spojnicového grafu z databáze mysql pomocí highcharts

  2. Kategorizovat data mysql do samostatných html tabulek?

  3. Spravovaný vs nespravovaný ovladač Oracle ODP.net

  4. Příkaz mysql delete s limitem