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

Získání výjimky java.sql.SQLException:Operace není povolena po uzavření sady ResultSet

Problém je ve způsobu načítání dat v getStuff() . Při každé návštěvě getStuff() získáte novou sadu ResultSet ale nezavřeš to.

To porušuje očekávání Statement třídy (viz zde - http://docs. oracle.com/javase/7/docs/api/java/sql/Statement.html ):

Ve výchozím nastavení může být současně otevřen pouze jeden objekt ResultSet na objekt Statement. Pokud je tedy čtení jednoho objektu ResultSet proloženo čtením jiného objektu, každý musí být generován jinými objekty Statement. Všechny metody provádění v rozhraní příkazu implicitně zavírají aktuální objekt ResultSet příkazu, pokud existuje otevřený.

Co dělá věci ještě horší, je rs z volacího kódu. Je také odvozen z statement pole, ale není uzavřeno.

Sečteno a podtrženo:máte několik ResultSet týkající se stejného Statement objekt současně otevřen.



  1. Instalace MySQL-python

  2. jak přidat vlastní adaptér do aktivity, aby se seznam objevil v aktivitě?

  3. Příkaz INSERT je v konfliktu s omezením FOREIGN KEY - SQL Server

  4. Jak spustit uloženou proceduru každý den v SQL Server Express Edition?