Oracleにsqlで実行時のタイムスタンプ(sysdate,”yyyy.mm.dd hh24:mi:ss”)をupdateしたいのですが、うまくいきません。

正しい記述を教えてください。
---
update table set date_input=’format(sysdate,”yyyy.mm.dd hh24:mi:ss”)’ where id=1;
ORA-01841: (full) year must be between -4713 and +9999, and not be 0

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:bonlife No.1

回答回数421ベストアンサー獲得回数75

ポイント50pt

http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sq_kj07_3.htm

SQL 日付関数 - システム日付、日付の差、日付の加算、次の曜日、月末日 - SAK Streets

date_inputはDATE型のフィールドでしょうか。

その場合、sysdate自体がDATE型ですので、型変換などは不要です。


update table set date_input = sysdate where id=1;


でいかがでしょうか。


VARCHAR2型などの文字フィールドに値をセットするのであれば


update table set date_input = to_char(sysdate,’YYYY.MM.DD HH24:MI:SS’) where id=1;


です。

ORACLEのエラーとの関係性まで調べてませんが、一度試してみてください。

id:P-mako

ご回答ありがとうございました。

date_inputは、date型です。

教えていただいた記述で上手くupdateできました。

ありがとうございます。

2006/02/16 15:06:48

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません