AMOL Mehlawat:
私は、PostgreSQLでテーブルを作成する必要があります。カラムの一つであるadd_date
行が挿入された時に現在の日付を含むべきです。
私は間で混乱しています:
かどうかは、私は列を作成する必要がありadd_date DATE NOT NULL DEFAULT CURRENT_DATE
、データベースが日付を生成する仕事をしましょう。
OR
私は列を宣言する必要がありますVARCHAR
し、Javaを使用して現在の日付を渡します。
何が最善のアプローチであるべきで、なぜ私は1つに行くべきですか?
ありがとうございました。
名のない馬 :
NEVER VARCHAR列に日付値を格納しない、ちょうどありません
列は間違いなくデータ型で定義する必要がありますDATE
。あなたは、Javaから価値を提供したいかどうかは別の問題です。
しかし、あなたは正しくとして定義しても、
add_date DATE NOT NULL DEFAULT CURRENT_DATE
あなたはまだJavaから日付を渡すことができます。
String sql = "insert into the_table (some_column, add_date, other_column) values (?,?,?)"
PreparedStatement pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, 42);
pstmt.setObject(2, LocalDate.now());
pstmt.setString(3, "Some String");