Meaningless Drivel is fun!
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

Win a copy of Make it so: Java DB Connections & Transactions this week in the JDBC forum!
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!