[pgsql-jp: 26153] 日付データのDB登録について

Hiroyuki Yamada hiroyuki @ rh.is.hitachizosen.co.jp
2002年 5月 28日 (火) 12:31:35 JST


山田@京都です。
 みなさん、こんにちは。
 下記プログラムは、現在時刻をテーブル登録するものなのですが、 d_date,
d_time, d_timestampの各フィールドに String型データからDBへ値を登録したいので
すが、どのようにしたら良いのかご教授ねがいませんでしょうか?

(例)
 String date_field = "2002-11-05";
 String time_field = "10:09:35";
 String timestamp_field = "1980-09-21 15:42:13.123";
のデータをttt_tableテーブルへ登録したい。

------------------------------------------------------
create table ttt_table ( d_date DATE, d_time time, d_timestamp timestamp );
------------------------------------------------------
import java.sql.*;

public class Hizuke {
 public static void main(String[] args) {
  try {
   Class.forName("???Driver");
   String url = "jdbc:????";
   String user = "aaaa";
   String password = "bbbb";
   Connection conn = DriverManager.getConnection(url, user, password);

   java.util.Calendar calendar = java.util.Calendar.getInstance();
   java.util.Date date     = calendar.getTime();
   java.sql.Date sqlDate = new java.sql.Date(date.getTime());
   java.sql.Time sqlTime = new java.sql.Time(date.getTime());
   java.sql.Timestamp sqlTimestamp = new java.sql.Timestamp(date.getTime());

   PreparedStatement pstmt = conn.prepareStatement("INSERT INTO ttt_table
values ( ?, ?, ? )");
   pstmt.clearParameters();
   pstmt.setDate(1, sqlDate);
   pstmt.setTime(2, sqlTime);
   pstmt.setTimestamp(3, sqlTimestamp);
   pstmt.executeUpdate();

   conn.commit();
   pstmt.close();
   conn.close();
  } catch(SQLException e) {
   e.printStackTrace();
  } catch(Exception e) {
   e.printStackTrace();
  }
 }
}
よろしくお願いします。






pgsql-jp メーリングリストの案内