0

私は以下のSQLクエリを持っています

select to_date(start_date, 'dd-Mon-yy') AS start_date FROM table

以下のResultSetオブジェクト(rs)もあります

rs.getDate("start_date")

SQL Developerでデータベース(Oracle)に対して直接クエリを実行すると、形式は期待どおりに返されます(08-AUG-12)が、JDBCを使用してJavaアプリでクエリを実行すると、として出力され2012-08-08ます。

フォーマットを正しい方法で取得していますか?列(日付データ型)を選択してから、JodaTimeのDateTimeFormatterを使用してフォーマットする必要がありますか?ここで何が間違っているのかわかりません。

java.sql.Dateからjava.util.Dateに変換するときにも同じことが起こります...

4

2 に答える 2

1

ここでは単純に日付に変換しています...おそらく、出力用に文字列に変換したいと思うでしょう。

TO_CHAR( mydate, 'mm-dd-yyyy' )
于 2012-08-17T16:23:47.247 に答える
1

DateJava でオブジェクトを扱う場合、データベースの形式は考慮されません。関数で使用している形式と正確に一致させたい場合は、 を使用TO_CHARして、列を としてフェッチできますString

または、列を としてフェッチし続けてから、たとえばDateでそれに応じてフォーマットします。DateTimeFormatter

于 2012-08-17T16:24:18.113 に答える