ORA-00917,缺少逗号

时间:2021-02-20 05:56:19

标签: sql

我是 SQL 的新手,正在学习 DBMS 课程。我们正在将东西插入我们的桌子,我一生都找不到我遗漏了逗号的地方。 这门课的教授几乎没有做过任何实际教学,只是将我们推荐给 YouTube,所以我们只能靠自己。如果有人能指出我正确的方向......那就太棒了。 值得注意的是,我们也在将我们的 sql 代码写入 Apex Oracle 网站。

INSERT INTO PROJECTDATA (ProjectID,ProjectName,ProjDeptID,MaxHours,StartDate,EndDate)
VALUES
(901,'Product Plan',3001,135,TO_DATE(10-May-12,'DD-Mon-YYYY'), TO_DATE(15-Sep-12,'DD-Mon-YYYY');

INSERT INTO PROJECTDATA (ProjectID,ProjectName,ProjDeptID,MaxHours,StartDate,EndDate)
VALUES
(902,'Tax Preparation',1001,120,TO_DATE('05/Jul/12','DD-MON-YYYY'), TO_DATE('15/Oct/12','DD-MON-YYYY')```

2 个答案:

答案 0 :(得分:0)

to_date() 接受字符串参数,因此日期文字应该用单引号括起来,例如

TO_DATE('10-May-12','DD-Mon-YYYY')
        ^
        | here

答案 1 :(得分:-2)

您的查询中缺少右括号。

试试

INSERT INTO PROJECTDATA (ProjectID,ProjectName,ProjDeptID,MaxHours,StartDate,EndDate)
VALUES (901,'Product Plan',3001,135,TO_DATE(10-May-12,'DD-Mon-YYYY'), TO_DATE(15-Sep-12,'DD-Mon-YYYY'));

注意语句末尾的额外结束括号 - 您只有一个结束 TO_DATE 语句。如果没有结束括号,它会考虑第一个查询的以下语句部分 - 导致它给你误导性的逗号错误