File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JDBC and the fly likes prepared statement and DB field char Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Databases » JDBC
Bookmark "prepared statement and DB field char" Watch "prepared statement and DB field char" New topic

prepared statement and DB field char

Rajni Patel
Ranch Hand

Joined: Sep 03, 2009
Posts: 84

I have a field in Database which is of CHAR(11) type. I am using
prepared statement to set parameter value in this field in Java in DAO class. I used
setString method of prepared statement for this purpose but i didnt get
any success in it.

Can any one help me which prepared statement method should I use to set
parameter in this field.

Jeanne Boyarsky
internet detective

Joined: May 26, 2003
Posts: 30130

setString() is correct. What error did you get?

[Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
Blogging on Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, OCAJP, OCPJP beta, TOGAF part 1 and part 2
Rajni Patel
Ranch Hand

Joined: Sep 03, 2009
Posts: 84
Thanks for reply.

My query is like this:

sql = "select empname from employ where empno = ?";

Here empno is char(11) in DB.

and then I set value


Originally, there is record which has empno=101 in DB. but in my case there is no data fetch from DB and also not any error is coming.

Paul Clapham

Joined: Oct 14, 2005
Posts: 18541

That just means your query selected zero records, then.

Perhaps you think there is a row in the table containing "101" in the empno column? Is it not possible that row actually contains "101 " or " 101"?
Rajni Patel
Ranch Hand

Joined: Sep 03, 2009
Posts: 84
Thanks for reply.

there is DB field char(11) so in db there is 11 size for that field.

so I have write querey like this.

select empname from emp where trim(empno)= '101';

now its working.

thanks again.
chris webster

Joined: Mar 01, 2009
Posts: 1616

Use VARCHAR or VARCHAR2 instead of CHAR as your column data-type, to avoid the trailing blanks on your data.

No more Blub for me, thank you, Vicar.
It is sorta covered in the JavaRanch Style Guide.
subject: prepared statement and DB field char
Similar Threads
EJb 2.1 Question
PreparedStatement issue
java.sql.SQLException: ORA-01008: not all variables bound
Inserting | into oracle DB
Merge command workd well , but gives ora-00905 in Java