2014-01-20 2 views
1

Так, как кто-то посоветовал мне вчера я использую SQL скрипку, так как это простой способ проверить запросы к базе данных и SQL программирования в целом, но я получаю эту ошибку:SQL Скрипки - формат даты не распознается

Schema Creation Failed: ORA-01821: date format not recognized 

Это происходит в строке вставки. Обычно это работает в Oracle, и я выбрал его в поле со списком в верхней части страницы Oracle 11g. Так в чем проблема?

create table Reparacoes(
numero_r int, 
matricula char(8), 
dataEntrada date, 
constraint pk_carro primary key(numero_R), 
constraint check_matricula check (regexp_like(matricula,'[[:number:]]{2}-[[:alpha:]]{2}-[[:number:]]{2}'))); 

insert into Reparacoes values (1,'S2-SS-12',to_date('yyyy-mm-dd','2013-11-10')); 
+0

Вы используете функцию неправильно: [TO_DATE()] (http://docs.oracle .com/cd/E11882_01/server.112/e26088/functions203.htm # SQLRF06132) –

+1

Какой идиот, все наоборот. Мне очень жаль тратить ваше время. –

+0

Плюс один голос за классное имя пользователя. –

ответ

2

По моей собственной глупости я неправильно использовал to_date. Это должно быть так:

to_date('2013-11-10','yyyy-mm-dd'));

и не нравится:

to_date('yyyy-mm-dd','2013-11-10'));

+2

Если вы уже используете форматы даты ISO, вы можете использовать литераторы даты. Например: 'values ​​(..., date '2013-11-10', ...'. Вам почти никогда не нужно использовать 'TO_DATE'. –

+0

Никогда не видел этого. Перейти к тестированию прямо сейчас! –

+0

' insert into Reparacoes значения (1, '99 -ZZ-99 ', дата' 2013/11/10 '); 'как это? –

Смежные вопросы