0

日付フィールドを null に設定すると、DB2 が日付フィールドに 01/01/0001 を書き込むのはなぜですか?

そのフィールドを NULL に設定できますか。db2 が 01/01/0001 に設定すると、有効な日付ではないため、ado レコードセットが爆発します。

私は何か間違ったことをしていますか?

4

2 に答える 2

0

もちろん、日付列を NULL 値に設定できます。どうやっそれをしますか?

使用しているクライアントがあなたを混乱させているか、その列の NULL 値を表示されている値に変更するトリガーがテーブルにあります。

于 2013-07-23T19:46:27.263 に答える
-1
  1. はい、日付列に null を挿入できます。以下は、null 値を挿入するために機能する構文です (バージョンによって異なります)。タイムスタンプは列タイプなので、日付と交換できます。DB2 のバージョンによっては、別の方法で実行できる場合があります。日時フィールドのフィールド仕様が null を許可するように設定されていない場合、これは機能しません。

    INSERT INTO [テーブル名](col1, col2, col3)SELECT Value1, Value2, cast(タイムスタンプとして NULL) FROM [ソース テーブル]

  2. 01/01/0001 が表示される理由は、DB2 が null を値に変換しようとしており、01/01/0001 が日付フィールドのデフォルトであるためです。

于 2014-01-03T18:05:40.237 に答える