アプリ版:「スタンプのみでお礼する」機能のリリースについて

Oracle9iで、前回記録時刻からの現在までの経過時間を、
hhmmdd(XX時間XX分XX秒)の形で格納する処理をCで作ることが必要になりました。

 そこで質問なのですが、DATE型に0000年00月00日3時14分30秒のように、差分の経過時間を入れることはできないのでしょうか?
 一度この方法(年月日時分秒を%4d%02d%02d%02d%02d%02dで格納してTO_DATEで'YYYYMMDDHH24MISS'の形で格納しようとしました)でデータを設定して試したところINSERT ERROR(月の値が不正)になってしまいました。DATE型ではこのようなデータの格納は無理なのでしょうか?

また、もし文字列として格納しないとだめかもしれないのであれば、テーブルのつくりなおしも考えています。
(なお、現在時刻を格納するのはだめと言われています)
それともし、類似の質問や参考ページがあったら教えていただけますでしょうか。DBを触るはほとんど初めてというレベルですが、よろしくお願いします。

A 回答 (1件)

DATE型は実在する日時でないとエラーになってしまいますね。



DATE型からINTERVAL DAY TO SECOND型に変更したらどうでしょう?期間を格納できます。

DBを変えるのは無理でしたらすいません。
    • good
    • 0
この回答へのお礼

やっぱり実在する日付じゃないとだめみたいですね
長さ固定の文字列として格納するか現在時刻をいれて取り出すときに時刻差をとるようにできないかな?と思っていましたが、INTERVAL DAY TO SECOND型にしようかと思います。
回答ありがとうございます。

お礼日時:2005/07/04 16:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す