Hi! There isn't a new way to set values for a LONG column to a prepared statement in release 7.4. The example you have send should work. And it works in my environment. So it is probably something specific to your particular usage. Can you send my a vtrace (http://sapdb.2scale.net/moin.cgi/VTrace) to see the reason for the error?
Thanks, Marco > -----Original Message----- > From: Hellgren, Johan [mailto:[EMAIL PROTECTED] > Sent: Dienstag, 10. Juni 2003 22:22 > To: [EMAIL PROTECTED] > Subject: Problem inserting values into LONG column after > upgrade to 7.4 > > > Dear all, > > after having upgraded our kernel and database instances from > version 7.3 to > 7.4, we have run into problems inserting values into LONG > columns. Assume > this table: > > CREATE TABLE TBLTEST > ( > "KEY" INTEGER, > "LONGVALUE" LONG ASCII > ) > > The following insert worked as expected (one row inserted) in > 7.3 (using the > SAPDB JDBC): > > Context ctx = null; > ctx = (Context)new InitialContext().lookup("java:comp/env"); > DataSource Databaseds = (DataSource)ctx.lookup("jdbc/TESTDB"); > Connection conSAPDB = null; > conSAPDB = Databaseds.getConnection(); > > PreparedStatement localPreparedStmt = null; > int result = -1; > > StringBuffer sbQuery = new StringBuffer(); > sbQuery.append("INSERT INTO TBLTEST VALUES ( ?, ? )"); > localPreparedStmt = conSAPDB.prepareStatement(sbQuery.toString()); > localPreparedStmt.setLong(1, 1); > localPreparedStmt.setString(2, "Value"); > result = localPreparedStmt.executeUpdate(); > > However, the same statements executed against a 7.4. database > instance fails > with message "SQLException:[-2010]: Assignment impossible, > char value too > long". On the other hand, doing an update of a row in the > same table still > works in both database versions (one row updated): > > StringBuffer sbQuery = new StringBuffer(); > sbQuery.append("UPDATE TBLTEST SET LONGVALUE = ? WHERE KEY = ?"); > localPreparedStmt = conSAPDB.prepareStatement(sbQuery.toString()); > localPreparedStmt.setString(1, "NewValue"); > localPreparedStmt.setLong(2, 1); > result = localPreparedStmt.executeUpdate(); > > Is there a new way to set values for a LONG column to a > prepared statement > that needs to be used for version 7.4, or am I missing > something obvious? > > Any insight appreciated! > > Johan H > _______________________________________________ > sapdb.general mailing list > [EMAIL PROTECTED] > http://listserv.sap.com/mailman/listinfo/sapdb.general > _______________________________________________ sapdb.general mailing list [EMAIL PROTECTED] http://listserv.sap.com/mailman/listinfo/sapdb.general
