В вашей схеме my_date
уже является датой, вы не можете конвертировать дату в дату, эта строка не имеет смысла:
my_date DATE NOT NULL
CHECK (my_date = TO_DATE(my_date,'YYYY-MM-DD')));
Вы можете написать to_date
для приведения строки кdate:
INSERT INTO my_table VALUES('01',TO_DATE('2019-09-28'));
Вы должны понимать, что Oracle не хранит date
в строковом формате, Oracle хранит date
во внутреннем двоичном формате, потому что это, вы должны привести от строки квнутреннее двоичное представление для date
.
Если вы хотите отформатировать дату на выходе, используйте to_char
:
select to_char( my_date, 'YYYY-MM-DD' ) as myFormatedDate
from my_table;