プロが教えるわが家の防犯対策術!

JBuilder6の中での話しなのですが、
SQLSERVERのdatetime型のデータをClassの中で取得しようと思い、以下のようにしましたがうまく時間の部分が取得できません。

DateFormat df = DateFormat.getTimeInstance();
//日時項目からデータの取得
GetDate=df.format(rs.getDate("日時"));

例えば「2002/07/11 12:40:40」というデータがあった場合、
GetDateの中身は「2002/07/11 00:00:00」になってしまいます。
なにがいけないのでしょうか。
よろしくお願いします。

A 回答 (2件)

getDate(String columnName)では、時刻情報を取れないと思ったので、getTimestamp(String columnName) の方を使ってみては?




ただし、戻り値がTimestamp型になってしまうので、考慮が必要です。
Date dt = rs.getDate("日付")
だったら、
Date dt = new Date((rs.getTimestamp("日付")).getTime());
とかしないといけないのかな・・・。
    • good
    • 0
この回答へのお礼

いや~、getDateをgetTimestampにしたらうまくいきましたよ~♪
本当にどうもありがとうございました。

お礼日時:2002/07/14 20:02

反則技かもしれませんが・・・・・


たしか、このテのデータって実は「rs.getString("日時")」でStringとして取ってこれたような・・・。
 Stringで取ってきてから、java.sql.Dateクラスの「valueOf」をつかってDate型に戻せばOKかもしれません。
 つい先日この方法を使ったような記憶があるので大丈夫だとは思いますが、できなかったら申し訳ありません。
    • good
    • 0
この回答へのお礼

たしかにStringでやれば全部とれますねぇ~。
ありがとうございました。

お礼日時:2002/07/14 20:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!