Thanks for the quick reply Nahtan! However, it is still giving the same "invalid Table name" error. Here is the modified annotation per your suggestion. @Insert("insert into USER (USERID, USERNAME, PASSWORD, SERVER_GROUP) " + "select ${trgUserId}, USERNAME, PASSWORD, SERVER_GROUP " + "from USER where USERID = #{srcUserId,javaType=int,jdbcType=INTEGER}") Did I miss something?
nmaves wrote: > > Sure do :) Great error message eh.... > > use ${trgUserId} in the select portion and leave #{trgUserId} in the where > clause. # infers a true jdbc parameter which are not allowed in the > select > portion of a statement. > > Nahtan > > On Wed, Mar 10, 2010 at 4:28 PM, marksomaha <mark.stev...@dtn.com> wrote: > >> >> I am trying to do a insert that copies rows from an existing user. >> Essentially cloning a user, but change userid for the new record. >> >> Here is the syntax: >> @Insert("insert into USER (USERID, USERNAME, PASSWORD, SERVER_GROUP) " >> + >> "select #{trgUserId,javaType=int,jdbcType=INTEGER}, USERNAME, >> PASSWORD, SERVER_GROUP " + >> "from USER where USERID = >> #{srcUserId,javaType=int,jdbcType=INTEGER}") >> void cloneUser(final int trgUserId, final int srcUserId); >> >> When I try this syntax, I get the following error back: >> >> org.apache.ibatis.exceptions.IbatisException: >> ### Error updating database. Cause: java.sql.SQLException: ORA-00903: >> invalid table name >> >> ### The error may involve testibatis3.UserMapper.cloneUser-Inline >> ### The error occurred while setting parameters >> ### Cause: java.sql.SQLException: ORA-00903: invalid table name >> >> at >> >> org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8) >> at >> >> org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:100) >> at >> >> org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:87) >> at >> org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:54) >> at >> org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:35) >> >> Any ideas as to what would cause an "Invalid table name"? The USERS >> table >> exists and I have verified the SQL statement in SQLPLUS. >> -- >> View this message in context: >> http://old.nabble.com/ibatis-3.0---%40Insert-with-Insert-select-fails-tp27857358p27857358.html >> Sent from the iBATIS - User - Java mailing list archive at Nabble.com. >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: user-java-unsubscr...@ibatis.apache.org >> For additional commands, e-mail: user-java-h...@ibatis.apache.org >> >> > > -- View this message in context: http://old.nabble.com/ibatis-3.0---%40Insert-with-Insert-select-fails-tp27857358p27857465.html Sent from the iBATIS - User - Java mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: user-java-unsubscr...@ibatis.apache.org For additional commands, e-mail: user-java-h...@ibatis.apache.org