java select from datasource
Executes the given SQL statement, which may return multiple results.что у тебя возвращает getUpdateCount и getMoreResults ?
In some (uncommon) situations, a single SQL statement may return
multiple result sets and/or update counts. Normally you can ignore
this unless you are (1) executing a stored procedure that you know may
return multiple results or (2) you are dynamically executing an
unknown SQL string.
The execute method executes an SQL statement and indicates the form of the first result. You must then use the methods getResultSet or getUpdateCount to retrieve the result, and getMoreResults to move to any subsequent result(s).
при выполнении stmt.execute(query); срабатывает exception (java.lang.NullPointerException но коннект с базой не пропадает потому что сразу же выполняется инсерт например.
при выполнении stmt.execute(query); срабатывает exception (java.lang.NullPointerException)а что ж про это ни слова в изначальном посте?
в целом я бы предложил либо упорно гуглить, либо скачать сурцы мыскуля и подебажить
какой стектрейс у этого NPE? может там по названию методов чо понять можно?
*upd*
все таки скажу истину: дело не в джаве, класс Statement и класс ResultSet являются пустышками, вся реализация лежит в драйвере конкретной базы данных. тойсть компания Оракл (Сан) никакой ответственности за енто не несёт
сам на тот момент только проверил. там действительно народ параметры запуска вебсервера пытается менять и т.д. в любом случае я понял, куда копать. и у меня есть условное подтверждение работоспособности функции, просто это бывает не всегда так.
тойсть компания Оракл (Сан) никакой ответственности за енто не несётПосле некоторых приобретений Оракл как раз несет.
Оставить комментарий
Teteshnik
поскольку я хороший программист, а в жаве просто атец, то возникло непонимание по незнанию.итак. используем weblogic, eclipse, mysql, data source находятся на weblogic.
часть кода следующая (может кто опознает).
DataSource ds=(DataSource)ctx.lookup("mysql_test");
Connection con=ds.getConnection;
Statement stmt = null;
String query = "select * from tagan";
stmt = con.createStatement;
System.out.println("---" + stmt.execute(query; // выводится True
ResultSet rs = stmt.getResultSet; // а вот тут уже NULL
Значит как видите при попытке вывести данные возвращается NULL, хотя stmt.execute(query) возвращает TRUE. Более того update и insert работает. Помогите плиз вывести какой-нить результат.