Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Question about ResultSet.getString(String columnName)

Posted on 2004-09-28
8
Medium Priority
?
963 Views
Last Modified: 2008-02-01
Hi, experts,
 
I have a sql select sentence:
    select to_char(sysdate, 'FMMonth DD, YYYY') today_month_dd_yyyy from dual
The result is
    'September 28, 2004'

But when I use java.sql.ResultSet (in a server application in Weblogic812) to get the today_month_dd_yyyy value, the java code:
    rset.getString("today_month_dd_yyyy");
always return
    9? 28, 2004

Why? Can someone help me to fix this.

Thanks in advance.
0
Comment
Question by:acanuva
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 12

Expert Comment

by:Giant2
ID: 12167693
why you not use Calendar.getInstance() instead?
0
 
LVL 37

Expert Comment

by:zzynx
ID: 12167694
What's the column type in your database? Is the date stored as a string or a date?
0
 
LVL 37

Expert Comment

by:zzynx
ID: 12167704
Do you really simply want the current day?
What about:
System.out.println( (new SimpleDateFormat("MMMM DD, yyyy")).format(new Date()) );
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 21

Expert Comment

by:MogalManic
ID: 12168099
Just leave the DB column as date and format it on the java side.
EX.
  select SYSDATE "txnDate" from dual
...

  SimpleDateFormat format=new SimpleDateFormat("MMMMM dd, yyyy");
  Date dt=rs.getTimestamp("txnDate");
  String dateStr=format.format(dt);
0
 
LVL 9

Accepted Solution

by:
Venci75 earned 1500 total points
ID: 12168104
What happens if you first change the language of your session:
ALTER SESSION SET NLS_LANGUAGE = 'laguage'
0
 
LVL 1

Expert Comment

by:KartikShah
ID: 12168271
One question, are you using the native drivers provided by oracle or the ones supplied by Weblogic. the reason is that since you are doing a to_char, it should not matter to driver to display text as date. Try using this query and see thats the result:

select to_char(sysdate, '/YYYY\DD/FMMonth\') today_month_dd_yyyy from dual

and if in the java code, you get a result like:

/2004\28/September\

then there might be a problem with the driver you are using, as it might be trying to be intelligent to display the date in numericals instead of plain text.

If this works, then I suggest using the latest oracle db drivers, and verify if the issues gets resolved or no

Kartik
0
 

Author Comment

by:acanuva
ID: 12176089
Thanks very much for all answers.

Actually, I simplified my problem to get a quick answer. Let me describe it with more details.

I use jdbc to call a stored procedure which returns a ResultSet (in stored procedure, a cursor), one of the columns of the ResultSet is named 'today_month_dd_yyyy'. The definition of this column is something like:
   
    OPEN xx_cursor FOR
        SELECT DISTINCT to_char(sysdate, 'MM/DD/YYYY  HH:MI:SS A.M.') print_time,
               to_char(sysdate, 'FMMonth DD, YYYY') today_month_dd_yyyy,
               to_char(sysdate, 'MM/DD/YYYY') today_mm_dd_yyyy
                                   ......
        FROM    ......
        WHERE    ........
                   
After getting the ResultSet, I use rset.getString(columnName) to get the value of 'today_month_dd_yyyy' column. I cann't change the sql because this stored procedure is also used by other programs.

Then, comes the problem. When I test
    select to_char(sysdate, 'FMMonth DD, YYYY') today_month_dd_yyyy from dual
The result is
    'September 28, 2004'

But in java:
    rset.getString("today_month_dd_yyyy");
I got
    9? 28, 2004

Thanks
Acanuva
0
 
LVL 12

Expert Comment

by:Giant2
ID: 12177024
You close the question, so I believe you solved your problem. Isn't it?
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
Suggested Courses

618 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question