A5:SQL Mk-2

開発のこと、日々のこと

DB2のDate型およびTimestamp型

ホーム フォーラム A5:SQL Mk-2掲示板 DB2のDate型およびTimestamp型

このトピックには3件の返信が含まれ、2人の参加者がいます。3 ヶ月、 1 週前 松原正和 さんが最後の更新を行いました。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #2984 返信

    nnaoto

    IBM DB2に対してADO経由でアクセスした場合、Date型の値が 0001-01-01 となるようなデータ、あるいはTimestamp型の値が 0001-01-01 00:00:00 となるようなデータを取得した際にエラーが発生してしまうようです。

    おそらく、内部的に日付の書式処理に失敗しているのではないかと思われますが、ご確認いただくことはできますでしょうか。

    ※私の方で作成したプログラム(C#やJava)からは問題なく値を取得することができることは確認しております。

    お手数をおかけいたしますが、よろしくお願いします。

    #2990 返信

    松原正和
    キーマスター

    nnaotoさんこんにちは。

    こちらで再現できなかったのですが、 0001-01-01 のデータのとき、どのようなエラーメッセージが表示されますでしょうか?。

    あと、データベースの追加と削除の画面から、「専用接続」でDB2へ接続したときはどうでしょうか?

    #3000 返信

    nnaoto

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

    SQLを実行すると、結果表示エリアにおいて、該当のセル以降がグレーで表示されてしまいます。
    エラーが発生した最初のセルを選択すると、
    「複数ステップの操作でエラーが発生しました。各状態の値を確認してください。」
    というメッセージが表示されます。
    db2cmd でコマンドラインプロセッサーを起動してから該当のセルの値を取得すると、「0001-01-01-00.00.00.000000」と表示されます(Timestamp型の場合)。

    なお、ADOではなく、「専用接続(ODBC)」で接続した場合、エラーが発生せずに処理できることを確認いたしました(該当のセルは 0001/01/01 と表示されました)。

    今のところ、ADOで無ければならないという理由はありませんのでひとまずはODBCで対応することといたします(将来的にADOで無ければならない、という状態にもならないと思いますので)。

    アドバイス、ありがとうございました。

    #3026 返信

    松原正和
    キーマスター

    nnaoto さんこんにちは。

    すみません、再現方法に誤りがありました。こちらでも再現しました。

    ただ、「複数ステップの操作でエラーが発生しました。各状態の値を確認してください。」というのはADO内部でのエラーなので、ちょっと修正できないような気がします。

    ただ、専用接続で正しく表示できるようなので、とりあえずこれでクローズとさせてください。

    以上よろしくお願いいたします。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
返信先: DB2のDate型およびTimestamp型
あなたの情報:




コメントは受け付けていません。