在sql plus中插入日期查询

时间:2015-05-10 17:44:49

标签: sql oracle date oracle11g sql-insert

所以我试图在sql plus中插入日期,但它一直在给出错误 查询是:

INSERT INTO Employee (empno, fname, lname, jobtittle, bdate, address, sex, salary, Superemp, dno)
VALUES (1, 'Anam', 'Irfan', 'Nurse', '1995-04-29', 'house1234', 'F', 8000, 455, 123 );

如果像这样插入错误是'文字与字符串格式不匹配' 如果它像29-04-1995 pr 04-29-1995或用'/'表示not a valid month

如果我使用TO_DATE函数,则会显示SYSTEM.EMPLOYEE_DNO_FK violated-parent key not found

2 个答案:

答案 0 :(得分:1)

日期错误有点无关紧要;你知道你可以通过to_date('1995-04-29', 'YYYY-MM-DD')指定格式掩码来避免这些,或者你也可以使用DATE '1995-04-29'的日期文字。

重要的错误是您在评论SYSTEM.EMPLOYEE_DNO_FK violated-parent key not found中提到的错误。这意味着,基于约束名称,您在父部门表中没有ID为123的行。创建具有该ID的部门,或将您插入员工表的dno更改为部门表中已存在的部门。

(顺便说一句,你不应该在SYSTEM模式中创建自己的表。创建自己的模式并完成所有工作。)

答案 1 :(得分:0)

基本上,当您输入月份日期时,请输入该月份的简短表格而不是数字。 例如:1994年5月22日,而不是22-05-1994