Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / February 2007

Tip: Looking for answers? Try searching our database.

mysql callable statement problem

Thread view: 
lightning - 11 Feb 2007 06:15 GMT
my Mysql is 5.0.18

In database "test" I created a procedure:

mysql> delimiter //
mysql> create procedure demoSp(IN inputParam VARCHAR(255),INOUT
inOutParam INT)
   -> begin
   ->  declare z INT;
   ->  set z=inOutParam + 1;
   ->  set inOutParam = z;
   ->  select inputParam;
   ->  select CONCAT('dfjd',inputParam);
   -> end//

just add 1 to the IN/OUT param and select some stuff.
In fact this code is from the Mysql connector/J 's doc

In java code I wrote:

CallableStatement cStmt = con.prepareCall("{call demoSp(?,?)}");
cStmt.registerOutParameter(2, Types.INTEGER);
cStmt.setString("inputParam", "abc");
cStmt.setInt("inOutParam",2);

boolean had = cStmt.execute();
while (had) {
  ResultSet rs = cStmt.getResultSet();
  while (rs.next())
      System.out.println(rs.getString(1));
  had=cStmt.getMoreResults();
}
System.out.println(cStmt.getInt("inOutParam"));
con.close();

-----------------------------------
but the result is an error says "Out of range value adjusted for
column 'inOutParam' at row 1"
so I go on the net and search something says that I can solve this by
edit the my.ini, just remove the "STRICT_TRANS_TABLES" from the sql-
mode option and restart the db server.

I did this ,and the result give me:

abc
dfjdabc
1

no matter how I change the value of the "inOutParam", it just return
"1".

By accident , I just replace the line "

cStmt.setInt("inOutParam",2);

to

cStmt.setInt(1,2);

the result changes to be this:

2
dfjd2
3

My default charset is set to UTF-8

my connector/J version is 3.1.0
my jdk version 1.5.0

Is this a bug or did I miss something???
petersprc - 11 Feb 2007 21:27 GMT
Hi,

You can upgrade to the latest connector version which hopefully should
fix this.

There's a bug report here:
http://bugs.mysql.com/bug.php?id=15464

> my Mysql is 5.0.18
>
[quoted text clipped - 67 lines]
>
> Is this a bug or did I miss something???


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.