File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JDBC and Relational Databases and the fly likes PreparedStatement pads spaces Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "PreparedStatement pads spaces " Watch "PreparedStatement pads spaces " New topic

PreparedStatement pads spaces

Vic Dayton

Joined: Apr 21, 2002
Posts: 7
I have encountered a problem that if I used PreparedStatement to insert records, then JDBC will pad spaces in the fields.
But if I used regular statement, then the insert is fine.
Is this is normal? Is there any way I can fix this problem?
Any advice is greatly appreciated.
Varun Khanna
Ranch Hand

Joined: May 30, 2002
Posts: 1400
Is the datafield giving you this problem is of type CHAR ? if yes, Try VARCHAR and see if this works as in the SQL standard, CHAR is a fixed length data type. In many DB's (not all), that means every character must match, including size and trailing blanks.

- Varun
Vic Dayton

Joined: Apr 21, 2002
Posts: 7
Thanks for the reply. The datafield is Varchar.
But I found the real problem is the the setString() method. I still don't know why.
I found a work around is to supply all the value in the update SQL statement when construct the preparedStatement. I need this work around use the JSTL SQL tag. :-(
I agree. Here's the link:
subject: PreparedStatement pads spaces
It's not a secret anymore!