sql >> データベース >  >> RDS >> Oracle

ORA-01843:有効な月ではありません

    チェック制約では、日付形式マスク'YYYY/MM/DD HH:MI:SS AM'を指定してTO_CHAR()を指定します。 。ただし、範囲に指定する値は、2つの異なる形式です。例:

    '2005/01/01 00:00:01 AM' AND '12/31/2015 11:59:59 PM'
    

    文字列は思ったとおりに比較されないため、代わりに日付を使用することをお勧めします。

    constraint rental_rental_date check(rental_date) 
        between to_date('2005/01/01 00:00:01 AM', 'YYYY/MM/DD HH:MI:SS AM') and
                to_date('2015/12/31 11:59:59 PM', 'YYYY/MM/DD HH:MI:SS AM')
    

    ただし、これが問題の原因ではない場合があります。ロードプロセスでの変換である可能性があるため、データのロード方法を知る必要があります。




    1. `from`と同じテーブルを`select`とはどういう意味ですか?

    2. データベースからテーブルの特定の部分を表示しないようにするにはどうすればよいですか?

    3. MySQLクエリが1つしかない2つのforeachステートメント?

    4. SQLAlchemyでUUIDを使用するにはどうすればよいですか?