Re: Synthesize support for Statement.getGeneratedKeys()?
От | Ken Johanson |
---|---|
Тема | Re: Synthesize support for Statement.getGeneratedKeys()? |
Дата | |
Msg-id | 45BECBA1.8080508@kensystem.com обсуждение исходный текст |
Ответ на | Re: Synthesize support for Statement.getGeneratedKeys()? (Kris Jurka <books@ejurka.com>) |
Ответы |
Re: Synthesize support for Statement.getGeneratedKeys()?
|
Список | pgsql-jdbc |
Hi Kris, were you able to look at this? If time wont permit that I'll dig back in; though I'd prefer not to duplicate any work your're doing, of course. Thank, ken Kris Jurka wrote: > > > On Fri, 26 Jan 2007, Ken Johanson wrote: > >> http://onnet.cc/AbstractJdbc3Statement.patch >> http://onnet.cc/AbstractJdbc2Statement.patch > > I can't get the first patch to apply cleanly at all, erroring with > > patching file AbstractJdbc3Statement.java > patch: **** Premature `---' at line 33; check line numbers at line 21 > > And even to get to that point I had to change from windows \ to unix / > directory separators. Could we get a patch that is easy to apply? > > >> For some reason I'm getting an empty result set with this.. the >> javadocs are a tad sparse so I may not be able to resolve this for a >> day or two.. anyone better at with this api? I'm also not sure if this >> quick and dirty change will correctly handle PreparedStmts. >> > > I wouldn't be surprised if the driver is confused by an INSERT command > completion tag also having a result set. If you can produce a working > patch I'll take a closer look. > > Kris Jurka Kris, Strange about the patch. Aside from the import stmts, only the method below is changed in that source file: public int executeUpdate(String sql, String columnNames[]) throws SQLException { //fix-me "The driver will ignore the array if the SQL statement is not an INSERT statement" //fix me : impl NO_GENERATED_KEYS & RETURN_GENERATED_KEYS if (columnNames==null || columnNames.length==0) return executeUpdate(sql); //should never reallocate StringBuffer s = new StringBuffer(12+sql.length()+(columnNames.length*32)); s.append(sql); s.append('\n'); s.append("RETURNING"); s.append(' '); for (int i=0; i<columnNames.length; i++) { if (i!=0) s.append(','); s.append(columnNames[i]); } return executeUpdateGetResults(s.toString()); //throw new PSQLException(GT.tr("Returning autogenerated keys is not supported."), PSQLState.NOT_IMPLEMENTED); } ken
В списке pgsql-jdbc по дате отправления: