• 締切済み

JAVAでYYYYMMDDhhmm形式の文字列をORACLE(11g)

JAVAでYYYYMMDDhhmm形式の文字列をORACLE(11g)のDate型で定義されたカラムに反映させたいです。また逆にオラクルから取得したDate型の値をJAVAのYYYYMMDDhhmm形式の文字列に変換するにはどうしたら良いでしょうか? (1)Oracle(Date型)→Java(YYYYMMDDhhmm形式の文字列) (2)Java(YYYYMMDDhhmm形式の文字列)→Oracle(Date型) 具体的なコーディングが分からないので、サンプル的なものを提示して頂けると嬉しいです。よろしくお願いします。

  • Java
  • 回答数2
  • ありがとう数1

みんなの回答

  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.2

簡単に。 (1) Timestamp timestamp = resultSet.getTimestamp("COLUMN_NAME"); SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmm"); String dateStr = format.format(timestamp); もしくはselect時に to_charしてgetStringで受け取るという方法もあります。 (2) String dateStr = "201009131421"; SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmm"); statement.setTimestamp(new java.sql.Timestamp(format.parse(dateStr).getTime()); http://java.sun.com/javase/ja/6/docs/ja/api/java/text/SimpleDateFormat.html http://java.sun.com/javase/ja/6/docs/ja/api/java/sql/Timestamp.html

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

(1) JavaではResultSetからgetDateでjava.sql.Date型で取得。 それをSimpleDateFormatで文字列に変換。 Date型で取得せずにOracleのto_Char関数を使ってStringで取得するのもあり。 (2) JavaでSimpleDateFormatでjava.util.Date型に変換 それをPreparedStatementでsetDateで渡せばOK Oracleのto_Date関数を使ってStringで渡すのもあり。

関連するQ&A

  • 最終列の列番号を列文字に変換することはできますか?

    例えばaaaがある列を探し、その列番号は4で列文字がDですが、 列番号から列文字をvbaで取得する方法はありますか? Sub Sample() Dim i As Long Dim Colmoji As String i = Rows(1).Find(What:="aaa", LookAt:=xlWhole).Column Colmoji = i 'ここで列文字に変換したい MsgBox i & "の列文字は" & Colmoji & "です" End Sub このようなコードを作ってみたのですが列文字に変換する方法がわかりません。

  • Oracle SQLで文字列操作

    始めまして。 VB6でプログラミングをしています。DBはOracle8.16です。 Oracleテーブル上で、カテゴリー別に " 文字列 & ナンバリング " の値をもつレコードを、インサートしていく作業をしています。 ナンバリングの部分の現在の最大値に1足したものを、 新規レコードで値を持たせインサートしてます。 tblA Col1           Col2 1            NA-P1-1 1            NA-P1-2 1            NA-P1-3 1            NA-P1-4 3            NA-P3-1 3            NA-P3-2 3            NA-P3-3 1   この場合、 Select max(Col2) from tblA where Col1 = 1 で現在のCol1=1のMax値(Col2)は NA-P1-4 と取り出せるできるんですが、新規に追加するレコードのCol2の値が NA-P1-5だと取得できる方法はあるでしょうか。 Select Max(col2)+1 ~だと、カラム定義がvarchar2なんで、 当然のようにシステムに怒られました(当然ですが。。) お分かりの方、お願い致します。

  • Javaでの書式変換

    Javaでの書式変換について質問です。 JavaでTime型として値が"13:00:00"であるようなデータを保持している場合に、"13時0分"という文字列に変換された値を取得しようとしています。 要求としては、 1)"13:00:00"のようなTime型のデータを"13時0分"という文字列にしたい。 2)1時間未満の場合は"○分"という文字列にしたい。 Javaで独自に処理を書くしかないか迷っている状態です。 もし良いライブラリがあれば教えていただけないでしょうか?

    • ベストアンサー
    • Java
  • VC++2005で文字列変数の定義ができない

    VC++2005Express Edtionで文字列を扱うにはどうやればよいのでしょうか? 文字列変数を定義して、それに文字を代入して、 System::Diagnostics::Debug::Printするサンプルコードを提示してもらえないでしょうか?

  • Javaストリング文字列 の文字コード変換

    JavaでHttpRequestをつかい、 xmlを文字列で取得しDocumentオブジェクトに格納する際に、 文字コードの変換は必要でしょうか。 元のxmlはShift-Jisです。 UTF-8に変換する必要があるとどこかで見たため質問させていただきました。 また、変換が必要な場合の実装方法も教えてください。 よろしくお願いします。

  • 文字列の切り出し

    一応確認はしましたが、過去に似たような質問があったらすみませんが どうか教えて下さい。 今までOracleでコーディングしたことはありますが、postgresは初心者です。 文字列を右から切り出す関数はないでしょうか? 例えば、文字列「TEST」の末尾2文字を取りたいとき OracleのSQLで言えば substr( 'TEST', -2 ) ⇒ 'ST' が取れますが postgresではこういう風に使えないようです。 substr 以外の関数や、代わりにこうやる方法があるよと言ったことを教えて下さい。 お願い致します。

  • エクセルで表示形式で追加した文字を文字列にしたい

    エクセルで表示形式で追加した文字を文字列にしたいです。 例えば、セルに氏名を入力し、表示形式のユーザー定義で「@”様”」と入れます。そうすると氏名の後に”様”が追加されますが、今度はその「氏名+様」を文字列としたいのです。どなたかわかる方いらっしゃいますか?

  • Oracleに日付や時刻のリテラルはないのか

    Webで色々検索しているのですが、なかなか「これだ!」という情報に当たらず、お教えいただきたく存じます。 OracleのSQLで、日付や時間を表現するリテラルは存在しないのでしょうか? 必ず to_date(文字列, 'YYYY/MM/DD') と言うように文字列表現と関数の組み合わせでなければならないのでしょうか? to_date(文字列, 表現形式)とto_timestamp(文字列, 表現形式)を見つけたのですが、to_time(文字列, 表現形式)というのが見当たりませんでした。to_time関数は存在しないのでしょうか オラクルのSQLはバージョンによって微妙に違う、というような記述を過去ログに見つけたのですが、8と9について情報をお願いします。

  • Oracleのスペース文字について。

    今いろいろ調べていて、困っているのですが、ORACLEのスペースをVarchar2で取得した時、文字はどのように入っているのでしょう? たとえば、SELECT文を作って、スペースを取得した時、ASP+VBS等の変数を使ってスペース文字を変数に入れた時、どんな値が入ってくるのか知りたいのですが・・・・・ お分かりになる方いらっしゃいますか?

  • 文字列になっている配列を‥

    以下の値がDBに文字列の項目に登録されています。 DB から値を取得したのはいいのですが文字列なので foreach でグルグルしようとすると怒られてしまいます。 配列の型に変換できればいいのですが(array)だとうまく行かないしどうすればいいかどなたかご教授願えないでしょうか。 よろしくお願いします。 ■値(文字列でDBに格納されてます‥) array( 1=>'a', 2=>'b', 3=>'c', 10=>array( 'A'=>1, 'B'=>'hoge1', ), 11=>array( 'A'=>2, 'B'=>'hoge2', ), 12=>array( 'A'=>3, 'B'=>'hoge3', ), )

    • 締切済み
    • PHP